]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/windows3.cpp
Corrected a return type
[wxWidgets.git] / wxPython / src / msw / windows3.cpp
index 901a82cec7220636400cf8fa9f43ab60c98410f3..debe25579c9f659ba9ca9c51c417a93d8e3e11c1 100644 (file)
@@ -19,6 +19,8 @@
 /* Implementation : PYTHON */
 
 #define SWIGPYTHON
+#include "Python.h"
+
 #include <string.h>
 #include <stdlib.h>
 /* Definitions for Windows/Unix exporting */
 #   define SWIGEXPORT(a) a
 #endif
 
-#include "Python.h"
-
 #ifdef __cplusplus
 extern "C" {
 #endif
-
 extern void SWIG_MakePtr(char *, void *, char *);
 extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
 extern char *SWIG_GetPtr(char *, void **, char *);
@@ -58,9 +57,8 @@ extern PyObject *SWIG_newvarlink(void);
 #include "helpers.h"
 #include <wx/sashwin.h>
 #include <wx/laywin.h>
-#ifndef __WXMAC__
 #include <wx/popupwin.h>
-#endif
+#include <wx/tipwin.h>
 
 
 static PyObject* t_output_helper(PyObject* target, PyObject* o) {
@@ -89,11 +87,11 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
     return target;
 }
 
-#if PYTHON_API_VERSION >= 1009
-    static char* wxStringErrorMsg = "String or Unicode type required";
-#else
-    static char* wxStringErrorMsg = "String type required";
-#endif
+    // Put some wx default wxChar* values into wxStrings.
+    static const wxChar* wxSashNameStr = wxT("sashWindow");
+    DECLARE_DEF_STRING(SashNameStr);
+    static const wxChar* wxSashLayoutNameStr = wxT("layoutWindow");
+    DECLARE_DEF_STRING(SashLayoutNameStr);
 
 class wxPyPopupTransientWindow : public wxPopupTransientWindow
 {
@@ -103,10 +101,202 @@ public:
         : wxPopupTransientWindow(parent, style) {}
 
     DEC_PYCALLBACK_BOOL_ME(ProcessLeftDown);
+    DEC_PYCALLBACK__(OnDismiss);
+    DEC_PYCALLBACK_BOOL_(CanDismiss);
     PYPRIVATE;
 };
 
 IMP_PYCALLBACK_BOOL_ME(wxPyPopupTransientWindow, wxPopupTransientWindow, ProcessLeftDown);
+IMP_PYCALLBACK__(wxPyPopupTransientWindow, wxPopupTransientWindow, OnDismiss);
+IMP_PYCALLBACK_BOOL_(wxPyPopupTransientWindow, wxPopupTransientWindow, CanDismiss);
+
+#include <wx/vscroll.h>
+DECLARE_DEF_STRING(PanelNameStr);
+
+class wxPyVScrolledWindow  : public wxVScrolledWindow
+{
+    DECLARE_ABSTRACT_CLASS(wxPyVScrolledWindow);
+public:
+    wxPyVScrolledWindow() : wxVScrolledWindow() {}
+
+    wxPyVScrolledWindow(wxWindow *parent,
+                        wxWindowID id = wxID_ANY,
+                        const wxPoint& pos = wxDefaultPosition,
+                        const wxSize& size = wxDefaultSize,
+                        long style = 0,
+                        const wxString& name = wxPyPanelNameStr)
+        : wxVScrolledWindow(parent, id, pos, size, style, name)
+    {}
+
+    // Overridable virtuals
+
+    // this function must be overridden in the derived class and it should
+    // return the height of the given line in pixels
+    DEC_PYCALLBACK_COORD_SIZET_constpure(OnGetLineHeight);
+
+
+    // this function doesn't have to be overridden but it may be useful to do
+    // it if calculating the lines heights is a relatively expensive operation
+    // as it gives the user code a possibility to calculate several of them at
+    // once
+    //
+    // OnGetLinesHint() is normally called just before OnGetLineHeight() but you
+    // shouldn't rely on the latter being called for all lines in the interval
+    // specified here. It is also possible that OnGetLineHeight() will be
+    // called for the lines outside of this interval, so this is really just a
+    // hint, not a promise.
+    //
+    // finally note that lineMin is inclusive, while lineMax is exclusive, as
+    // usual
+    DEC_PYCALLBACK_VOID_SIZETSIZET_const(OnGetLinesHint);
+
+
+    // when the number of lines changes, we try to estimate the total height
+    // of all lines which is a rather expensive operation in terms of lines
+    // access, so if the user code may estimate the average height
+    // better/faster than we do, it should override this function to implement
+    // its own logic
+    //
+    // this function should return the best guess for the total height it may
+    // make
+    DEC_PYCALLBACK_COORD_const(EstimateTotalHeight);
+
+
+    // Also expose some other interesting protected methods
+
+
+    // find the index of the line we need to show at the top of the window such
+    // that the last (fully or partially) visible line is the given one
+    size_t FindFirstFromBottom(size_t lineLast, bool fullyVisible = false)
+    { return wxVScrolledWindow::FindFirstFromBottom(lineLast, fullyVisible); }
+
+    // get the total height of the lines between lineMin (inclusive) and
+    // lineMax (exclusive)
+    wxCoord GetLinesHeight(size_t lineMin, size_t lineMax) const
+    { return wxVScrolledWindow::GetLinesHeight(lineMin, lineMax); }
+
+
+    PYPRIVATE;
+};
+
+IMPLEMENT_ABSTRACT_CLASS(wxPyVScrolledWindow, wxVScrolledWindow);
+
+IMP_PYCALLBACK_COORD_SIZET_constpure(wxPyVScrolledWindow, wxVScrolledWindow, OnGetLineHeight);
+IMP_PYCALLBACK_VOID_SIZETSIZET_const(wxPyVScrolledWindow, wxVScrolledWindow, OnGetLinesHint);
+IMP_PYCALLBACK_COORD_const          (wxPyVScrolledWindow, wxVScrolledWindow, EstimateTotalHeight);
+
+#include <wx/vlbox.h>
+DECLARE_DEF_STRING(VListBoxNameStr);
+
+class wxPyVListBox  : public wxVListBox
+{
+    DECLARE_ABSTRACT_CLASS(wxPyVListBox);
+public:
+    wxPyVListBox() : wxVListBox() {}
+
+    wxPyVListBox(wxWindow *parent,
+                 wxWindowID id = wxID_ANY,
+                 const wxPoint& pos = wxDefaultPosition,
+                 const wxSize& size = wxDefaultSize,
+                 long style = 0,
+                 const wxString& name = wxPyVListBoxNameStr)
+        : wxVListBox(parent, id, pos, size, style, name)
+    {}
+
+    // Overridable virtuals
+
+    // the derived class must implement this function to actually draw the item
+    // with the given index on the provided DC
+    // virtual void OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const = 0;
+    DEC_PYCALLBACK__DCRECTSIZET_constpure(OnDrawItem);
+
+
+    // the derived class must implement this method to return the height of the
+    // specified item
+    // virtual wxCoord OnMeasureItem(size_t n) const = 0;
+    DEC_PYCALLBACK_COORD_SIZET_constpure(OnMeasureItem);
+
+
+    // this method may be used to draw separators between the lines; note that
+    // the rectangle may be modified, typically to deflate it a bit before
+    // passing to OnDrawItem()
+    //
+    // the base class version doesn't do anything
+    //    virtual void OnDrawSeparator(wxDC& dc, wxRect& rect, size_t n) const;
+    DEC_PYCALLBACK__DCRECTSIZET_constpure(OnDrawSeparator);
+
+
+    // this method is used to draw the items background and, maybe, a border
+    // around it
+    //
+    // the base class version implements a reasonable default behaviour which
+    // consists in drawing the selected item with the standard background
+    // colour and drawing a border around the item if it is either selected or
+    // current
+    //     virtual void OnDrawBackground(wxDC& dc, const wxRect& rect, size_t n) const;
+    DEC_PYCALLBACK__DCRECTSIZET_const(OnDrawBackground);
+
+
+    PYPRIVATE;
+};
+
+IMPLEMENT_ABSTRACT_CLASS(wxPyVListBox, wxVListBox);
+
+IMP_PYCALLBACK__DCRECTSIZET_constpure(wxPyVListBox, wxVListBox, OnDrawItem);
+IMP_PYCALLBACK_COORD_SIZET_constpure (wxPyVListBox, wxVListBox, OnMeasureItem);
+IMP_PYCALLBACK__DCRECTSIZET_constpure(wxPyVListBox, wxVListBox, OnDrawSeparator);
+IMP_PYCALLBACK__DCRECTSIZET_const    (wxPyVListBox, wxVListBox, OnDrawBackground);
+
+
+#include <wx/htmllbox.h>
+
+class wxPyHtmlListBox  : public wxHtmlListBox
+{
+    DECLARE_ABSTRACT_CLASS(wxPyHtmlListBox);
+public:
+    wxPyHtmlListBox() : wxHtmlListBox() {}
+
+    wxPyHtmlListBox(wxWindow *parent,
+                    wxWindowID id = wxID_ANY,
+                    const wxPoint& pos = wxDefaultPosition,
+                    const wxSize& size = wxDefaultSize,
+                    long style = 0,
+                    const wxString& name = wxPyVListBoxNameStr)
+        : wxHtmlListBox(parent, id, pos, size, style, name)
+    {}
+
+    // Overridable virtuals
+
+    // this method must be implemented in the derived class and should return
+    // the body (i.e. without <html>) of the HTML for the given item
+    DEC_PYCALLBACK_STRING_SIZET_pure(OnGetItem);
+
+    // this function may be overridden to decorate HTML returned by OnGetItem()
+    DEC_PYCALLBACK_STRING_SIZET(OnGetItemMarkup);
+
+// TODO:
+//     // this method allows to customize the selection appearance: it may be used
+//     // to specify the colour of the text which normally has the given colour
+//     // colFg when it is inside the selection
+//     //
+//     // by default, the original colour is not used at all and all text has the
+//     // same (default for this system) colour inside selection
+//     virtual wxColour GetSelectedTextColour(const wxColour& colFg) const;
+
+//     // this is the same as GetSelectedTextColour() but allows to customize the
+//     // background colour -- this is even more rarely used as you can change it
+//     // globally using SetSelectionBackground()
+//     virtual wxColour GetSelectedTextBgColour(const wxColour& colBg) const;
+
+
+    PYPRIVATE;
+};
+
+
+IMPLEMENT_ABSTRACT_CLASS(wxPyHtmlListBox, wxHtmlListBox)
+
+IMP_PYCALLBACK_STRING_SIZET_pure(wxPyHtmlListBox, wxHtmlListBox, OnGetItem);
+IMP_PYCALLBACK_STRING_SIZET     (wxPyHtmlListBox, wxHtmlListBox, OnGetItemMarkup);
 
 #ifdef __cplusplus
 extern "C" {
@@ -148,10 +338,10 @@ static PyObject *_wrap_new_wxSashEvent(PyObject *self, PyObject *args, PyObject
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|ii:new_wxSashEvent",_kwnames,&_arg0,&_arg1)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashEvent *)new_wxSashEvent(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashEvent *)new_wxSashEvent(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashEvent_p");
@@ -182,10 +372,10 @@ static PyObject *_wrap_wxSashEvent_SetEdge(PyObject *self, PyObject *args, PyObj
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashEvent_SetEdge(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashEvent_SetEdge(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -211,10 +401,10 @@ static PyObject *_wrap_wxSashEvent_GetEdge(PyObject *self, PyObject *args, PyObj
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashEdgePosition )wxSashEvent_GetEdge(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashEdgePosition )wxSashEvent_GetEdge(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -246,10 +436,10 @@ static PyObject *_wrap_wxSashEvent_SetDragRect(PyObject *self, PyObject *args, P
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashEvent_SetDragRect(_arg0,*_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashEvent_SetDragRect(_arg0,*_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -276,10 +466,10 @@ static PyObject *_wrap_wxSashEvent_GetDragRect(PyObject *self, PyObject *args, P
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = new wxRect (wxSashEvent_GetDragRect(_arg0));
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = new wxRect (wxSashEvent_GetDragRect(_arg0));
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
@@ -305,10 +495,10 @@ static PyObject *_wrap_wxSashEvent_SetDragStatus(PyObject *self, PyObject *args,
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashEvent_SetDragStatus(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashEvent_SetDragStatus(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -334,10 +524,10 @@ static PyObject *_wrap_wxSashEvent_GetDragStatus(PyObject *self, PyObject *args,
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashDragStatus )wxSashEvent_GetDragStatus(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashDragStatus )wxSashEvent_GetDragStatus(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -376,17 +566,18 @@ static PyObject *_wrap_new_wxSashWindow(PyObject *self, PyObject *args, PyObject
     wxPoint * _arg2 = (wxPoint *) &wxDefaultPosition;
     wxSize * _arg3 = (wxSize *) &wxDefaultSize;
     long  _arg4 = (long ) wxCLIP_CHILDREN|(wxSW_3D);
-    char * _arg5 = (char *) "sashWindow";
+    wxString * _arg5 = (wxString *) &wxPySashNameStr;
     PyObject * _argo0 = 0;
     wxPoint  temp;
     PyObject * _obj2 = 0;
     wxSize  temp0;
     PyObject * _obj3 = 0;
+    PyObject * _obj5 = 0;
     char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOls:new_wxSashWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOlO:new_wxSashWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_obj5)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -406,12 +597,18 @@ static PyObject *_wrap_new_wxSashWindow(PyObject *self, PyObject *args, PyObject
     _arg3 = &temp0;
     if (! wxSize_helper(_obj3, &_arg3))
         return NULL;
+}
+    if (_obj5)
+{
+    _arg5 = wxString_in_helper(_obj5);
+    if (_arg5 == NULL)
+        return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashWindow *)new_wxSashWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashWindow *)new_wxSashWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashWindow_p");
@@ -420,6 +617,10 @@ static PyObject *_wrap_new_wxSashWindow(PyObject *self, PyObject *args, PyObject
         Py_INCREF(Py_None);
         _resultobj = Py_None;
     }
+{
+    if (_obj5)
+        delete _arg5;
+}
     return _resultobj;
 }
 
@@ -434,10 +635,10 @@ static PyObject *_wrap_new_wxPreSashWindow(PyObject *self, PyObject *args, PyObj
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPreSashWindow",_kwnames)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashWindow *)new_wxPreSashWindow();
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashWindow *)new_wxPreSashWindow();
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashWindow_p");
@@ -459,17 +660,18 @@ static PyObject *_wrap_wxSashWindow_Create(PyObject *self, PyObject *args, PyObj
     wxPoint * _arg3 = (wxPoint *) &wxDefaultPosition;
     wxSize * _arg4 = (wxSize *) &wxDefaultSize;
     long  _arg5 = (long ) wxCLIP_CHILDREN|(wxSW_3D);
-    char * _arg6 = (char *) "sashWindow";
+    wxString * _arg6 = (wxString *) &wxPySashNameStr;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     wxPoint  temp;
     PyObject * _obj3 = 0;
     wxSize  temp0;
     PyObject * _obj4 = 0;
+    PyObject * _obj6 = 0;
     char *_kwnames[] = { "self","parent","id","pos","size","style","name", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi|OOls:wxSashWindow_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_arg6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi|OOlO:wxSashWindow_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_obj6)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -497,13 +699,23 @@ static PyObject *_wrap_wxSashWindow_Create(PyObject *self, PyObject *args, PyObj
     if (! wxSize_helper(_obj4, &_arg4))
         return NULL;
 }
+    if (_obj6)
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxSashWindow_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,_arg6);
+    _arg6 = wxString_in_helper(_obj6);
+    if (_arg6 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxSashWindow_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj6)
+        delete _arg6;
+}
     return _resultobj;
 }
 
@@ -527,10 +739,10 @@ static PyObject *_wrap_wxSashWindow_GetSashVisible(PyObject *self, PyObject *arg
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxSashWindow_GetSashVisible(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxSashWindow_GetSashVisible(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -555,10 +767,10 @@ static PyObject *_wrap_wxSashWindow_GetDefaultBorderSize(PyObject *self, PyObjec
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetDefaultBorderSize(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetDefaultBorderSize(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -584,10 +796,10 @@ static PyObject *_wrap_wxSashWindow_GetEdgeMargin(PyObject *self, PyObject *args
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetEdgeMargin(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetEdgeMargin(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -612,10 +824,10 @@ static PyObject *_wrap_wxSashWindow_GetExtraBorderSize(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetExtraBorderSize(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetExtraBorderSize(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -640,10 +852,10 @@ static PyObject *_wrap_wxSashWindow_GetMaximumSizeX(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetMaximumSizeX(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetMaximumSizeX(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -668,10 +880,10 @@ static PyObject *_wrap_wxSashWindow_GetMaximumSizeY(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetMaximumSizeY(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetMaximumSizeY(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -696,10 +908,10 @@ static PyObject *_wrap_wxSashWindow_GetMinimumSizeX(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetMinimumSizeX(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetMinimumSizeX(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -724,10 +936,10 @@ static PyObject *_wrap_wxSashWindow_GetMinimumSizeY(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxSashWindow_GetMinimumSizeY(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxSashWindow_GetMinimumSizeY(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -753,10 +965,10 @@ static PyObject *_wrap_wxSashWindow_HasBorder(PyObject *self, PyObject *args, Py
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxSashWindow_HasBorder(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxSashWindow_HasBorder(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -781,10 +993,10 @@ static PyObject *_wrap_wxSashWindow_SetDefaultBorderSize(PyObject *self, PyObjec
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetDefaultBorderSize(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetDefaultBorderSize(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -810,10 +1022,10 @@ static PyObject *_wrap_wxSashWindow_SetExtraBorderSize(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetExtraBorderSize(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetExtraBorderSize(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -839,10 +1051,10 @@ static PyObject *_wrap_wxSashWindow_SetMaximumSizeX(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetMaximumSizeX(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetMaximumSizeX(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -868,10 +1080,10 @@ static PyObject *_wrap_wxSashWindow_SetMaximumSizeY(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetMaximumSizeY(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetMaximumSizeY(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -897,10 +1109,10 @@ static PyObject *_wrap_wxSashWindow_SetMinimumSizeX(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetMinimumSizeX(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetMinimumSizeX(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -926,10 +1138,10 @@ static PyObject *_wrap_wxSashWindow_SetMinimumSizeY(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetMinimumSizeY(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetMinimumSizeY(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -958,10 +1170,10 @@ static PyObject *_wrap_wxSashWindow_SetSashVisible(PyObject *self, PyObject *arg
     }
     _arg2 = (bool ) tempbool2;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetSashVisible(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetSashVisible(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -990,10 +1202,10 @@ static PyObject *_wrap_wxSashWindow_SetSashBorder(PyObject *self, PyObject *args
     }
     _arg2 = (bool ) tempbool2;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashWindow_SetSashBorder(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashWindow_SetSashBorder(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1028,10 +1240,10 @@ static PyObject *_wrap_new_wxQueryLayoutInfoEvent(PyObject *self, PyObject *args
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|i:new_wxQueryLayoutInfoEvent",_kwnames,&_arg0)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxQueryLayoutInfoEvent *)new_wxQueryLayoutInfoEvent(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxQueryLayoutInfoEvent *)new_wxQueryLayoutInfoEvent(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxQueryLayoutInfoEvent_p");
@@ -1062,10 +1274,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetRequestedLength(PyObject *self,
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxQueryLayoutInfoEvent_SetRequestedLength(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxQueryLayoutInfoEvent_SetRequestedLength(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1091,10 +1303,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetRequestedLength(PyObject *self,
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxQueryLayoutInfoEvent_GetRequestedLength(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxQueryLayoutInfoEvent_GetRequestedLength(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1119,10 +1331,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetFlags(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxQueryLayoutInfoEvent_SetFlags(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxQueryLayoutInfoEvent_SetFlags(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1148,10 +1360,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetFlags(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxQueryLayoutInfoEvent_GetFlags(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxQueryLayoutInfoEvent_GetFlags(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1183,10 +1395,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetSize(PyObject *self, PyObject *
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxQueryLayoutInfoEvent_SetSize(_arg0,*_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxQueryLayoutInfoEvent_SetSize(_arg0,*_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1213,10 +1425,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetSize(PyObject *self, PyObject *
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = new wxSize (wxQueryLayoutInfoEvent_GetSize(_arg0));
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = new wxSize (wxQueryLayoutInfoEvent_GetSize(_arg0));
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    SWIG_MakePtr(_ptemp, (void *) _result,"_wxSize_p");
     _resultobj = Py_BuildValue("s",_ptemp);
@@ -1242,10 +1454,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetOrientation(PyObject *self, PyO
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxQueryLayoutInfoEvent_SetOrientation(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxQueryLayoutInfoEvent_SetOrientation(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1271,10 +1483,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetOrientation(PyObject *self, PyO
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxLayoutOrientation )wxQueryLayoutInfoEvent_GetOrientation(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxLayoutOrientation )wxQueryLayoutInfoEvent_GetOrientation(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1299,10 +1511,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_SetAlignment(PyObject *self, PyObj
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxQueryLayoutInfoEvent_SetAlignment(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxQueryLayoutInfoEvent_SetAlignment(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1328,10 +1540,10 @@ static PyObject *_wrap_wxQueryLayoutInfoEvent_GetAlignment(PyObject *self, PyObj
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxLayoutAlignment )wxQueryLayoutInfoEvent_GetAlignment(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxLayoutAlignment )wxQueryLayoutInfoEvent_GetAlignment(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1365,10 +1577,10 @@ static PyObject *_wrap_new_wxCalculateLayoutEvent(PyObject *self, PyObject *args
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|i:new_wxCalculateLayoutEvent",_kwnames,&_arg0)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxCalculateLayoutEvent *)new_wxCalculateLayoutEvent(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxCalculateLayoutEvent *)new_wxCalculateLayoutEvent(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxCalculateLayoutEvent_p");
@@ -1399,10 +1611,10 @@ static PyObject *_wrap_wxCalculateLayoutEvent_SetFlags(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxCalculateLayoutEvent_SetFlags(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxCalculateLayoutEvent_SetFlags(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1428,10 +1640,10 @@ static PyObject *_wrap_wxCalculateLayoutEvent_GetFlags(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (int )wxCalculateLayoutEvent_GetFlags(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxCalculateLayoutEvent_GetFlags(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1463,10 +1675,10 @@ static PyObject *_wrap_wxCalculateLayoutEvent_SetRect(PyObject *self, PyObject *
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxCalculateLayoutEvent_SetRect(_arg0,*_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxCalculateLayoutEvent_SetRect(_arg0,*_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1493,10 +1705,10 @@ static PyObject *_wrap_wxCalculateLayoutEvent_GetRect(PyObject *self, PyObject *
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = new wxRect (wxCalculateLayoutEvent_GetRect(_arg0));
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = new wxRect (wxCalculateLayoutEvent_GetRect(_arg0));
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    SWIG_MakePtr(_ptemp, (void *) _result,"_wxRect_p");
     _resultobj = Py_BuildValue("s",_ptemp);
@@ -1544,17 +1756,18 @@ static PyObject *_wrap_new_wxSashLayoutWindow(PyObject *self, PyObject *args, Py
     wxPoint * _arg2 = (wxPoint *) &wxDefaultPosition;
     wxSize * _arg3 = (wxSize *) &wxDefaultSize;
     long  _arg4 = (long ) wxCLIP_CHILDREN|(wxSW_3D);
-    char * _arg5 = (char *) "layoutWindow";
+    wxString * _arg5 = (wxString *) &wxPySashLayoutNameStr;
     PyObject * _argo0 = 0;
     wxPoint  temp;
     PyObject * _obj2 = 0;
     wxSize  temp0;
     PyObject * _obj3 = 0;
+    PyObject * _obj5 = 0;
     char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOls:new_wxSashLayoutWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_arg5)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|OOlO:new_wxSashLayoutWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_obj5)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1574,12 +1787,18 @@ static PyObject *_wrap_new_wxSashLayoutWindow(PyObject *self, PyObject *args, Py
     _arg3 = &temp0;
     if (! wxSize_helper(_obj3, &_arg3))
         return NULL;
+}
+    if (_obj5)
+{
+    _arg5 = wxString_in_helper(_obj5);
+    if (_arg5 == NULL)
+        return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashLayoutWindow *)new_wxSashLayoutWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,_arg5);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashLayoutWindow *)new_wxSashLayoutWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashLayoutWindow_p");
@@ -1588,6 +1807,10 @@ static PyObject *_wrap_new_wxSashLayoutWindow(PyObject *self, PyObject *args, Py
         Py_INCREF(Py_None);
         _resultobj = Py_None;
     }
+{
+    if (_obj5)
+        delete _arg5;
+}
     return _resultobj;
 }
 
@@ -1602,10 +1825,10 @@ static PyObject *_wrap_new_wxPreSashLayoutWindow(PyObject *self, PyObject *args,
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPreSashLayoutWindow",_kwnames)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxSashLayoutWindow *)new_wxPreSashLayoutWindow();
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxSashLayoutWindow *)new_wxPreSashLayoutWindow();
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxSashLayoutWindow_p");
@@ -1627,17 +1850,18 @@ static PyObject *_wrap_wxSashLayoutWindow_Create(PyObject *self, PyObject *args,
     wxPoint * _arg3 = (wxPoint *) &wxDefaultPosition;
     wxSize * _arg4 = (wxSize *) &wxDefaultSize;
     long  _arg5 = (long ) wxCLIP_CHILDREN|(wxSW_3D);
-    char * _arg6 = (char *) "layoutWindow";
+    wxString * _arg6 = (wxString *) &wxPySashLayoutNameStr;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     wxPoint  temp;
     PyObject * _obj3 = 0;
     wxSize  temp0;
     PyObject * _obj4 = 0;
+    PyObject * _obj6 = 0;
     char *_kwnames[] = { "self","parent","id","pos","size","style","name", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi|OOls:wxSashLayoutWindow_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_arg6)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi|OOlO:wxSashLayoutWindow_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_obj6)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1664,14 +1888,24 @@ static PyObject *_wrap_wxSashLayoutWindow_Create(PyObject *self, PyObject *args,
     _arg4 = &temp0;
     if (! wxSize_helper(_obj4, &_arg4))
         return NULL;
+}
+    if (_obj6)
+{
+    _arg6 = wxString_in_helper(_obj6);
+    if (_arg6 == NULL)
+        return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxSashLayoutWindow_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,_arg6);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxSashLayoutWindow_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj6)
+        delete _arg6;
+}
     return _resultobj;
 }
 
@@ -1694,10 +1928,10 @@ static PyObject *_wrap_wxSashLayoutWindow_GetAlignment(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxLayoutAlignment )wxSashLayoutWindow_GetAlignment(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxLayoutAlignment )wxSashLayoutWindow_GetAlignment(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1722,10 +1956,10 @@ static PyObject *_wrap_wxSashLayoutWindow_GetOrientation(PyObject *self, PyObjec
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxLayoutOrientation )wxSashLayoutWindow_GetOrientation(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxLayoutOrientation )wxSashLayoutWindow_GetOrientation(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1750,10 +1984,10 @@ static PyObject *_wrap_wxSashLayoutWindow_SetAlignment(PyObject *self, PyObject
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashLayoutWindow_SetAlignment(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashLayoutWindow_SetAlignment(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1786,10 +2020,10 @@ static PyObject *_wrap_wxSashLayoutWindow_SetDefaultSize(PyObject *self, PyObjec
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashLayoutWindow_SetDefaultSize(_arg0,*_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashLayoutWindow_SetDefaultSize(_arg0,*_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1815,10 +2049,10 @@ static PyObject *_wrap_wxSashLayoutWindow_SetOrientation(PyObject *self, PyObjec
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxSashLayoutWindow_SetOrientation(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxSashLayoutWindow_SetOrientation(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1844,10 +2078,10 @@ static PyObject *_wrap_new_wxLayoutAlgorithm(PyObject *self, PyObject *args, PyO
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxLayoutAlgorithm",_kwnames)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxLayoutAlgorithm *)new_wxLayoutAlgorithm();
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxLayoutAlgorithm *)new_wxLayoutAlgorithm();
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxLayoutAlgorithm_p");
@@ -1877,10 +2111,10 @@ static PyObject *_wrap_delete_wxLayoutAlgorithm(PyObject *self, PyObject *args,
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        delete_wxLayoutAlgorithm(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete_wxLayoutAlgorithm(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -1924,10 +2158,10 @@ static PyObject *_wrap_wxLayoutAlgorithm_LayoutMDIFrame(PyObject *self, PyObject
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxLayoutAlgorithm_LayoutMDIFrame(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxLayoutAlgorithm_LayoutMDIFrame(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -1970,10 +2204,10 @@ static PyObject *_wrap_wxLayoutAlgorithm_LayoutFrame(PyObject *self, PyObject *a
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxLayoutAlgorithm_LayoutFrame(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxLayoutAlgorithm_LayoutFrame(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -2016,10 +2250,10 @@ static PyObject *_wrap_wxLayoutAlgorithm_LayoutWindow(PyObject *self, PyObject *
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxLayoutAlgorithm_LayoutWindow(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxLayoutAlgorithm_LayoutWindow(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -2070,10 +2304,10 @@ static PyObject *_wrap_new_wxPopupWindow(PyObject *self, PyObject *args, PyObjec
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxPopupWindow *)new_wxPopupWindow(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPopupWindow *)new_wxPopupWindow(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxPopupWindow_p");
@@ -2096,10 +2330,10 @@ static PyObject *_wrap_new_wxPrePopupWindow(PyObject *self, PyObject *args, PyOb
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPrePopupWindow",_kwnames)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxPopupWindow *)new_wxPrePopupWindow();
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPopupWindow *)new_wxPrePopupWindow();
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxPopupWindow_p");
@@ -2140,10 +2374,10 @@ static PyObject *_wrap_wxPopupWindow_Create(PyObject *self, PyObject *args, PyOb
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (bool )wxPopupWindow_Create(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxPopupWindow_Create(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    _resultobj = Py_BuildValue("i",_result);
     return _resultobj;
@@ -2183,10 +2417,10 @@ static PyObject *_wrap_wxPopupWindow_Position(PyObject *self, PyObject *args, Py
         return NULL;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxPopupWindow_Position(_arg0,*_arg1,*_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxPopupWindow_Position(_arg0,*_arg1,*_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -2246,10 +2480,10 @@ static PyObject *_wrap_new_wxPopupTransientWindow(PyObject *self, PyObject *args
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxPyPopupTransientWindow *)new_wxPopupTransientWindow(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyPopupTransientWindow *)new_wxPopupTransientWindow(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyPopupTransientWindow_p");
@@ -2272,10 +2506,10 @@ static PyObject *_wrap_new_wxPrePopupTransientWindow(PyObject *self, PyObject *a
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPrePopupTransientWindow",_kwnames)) 
         return NULL;
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxPyPopupTransientWindow *)new_wxPrePopupTransientWindow();
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyPopupTransientWindow *)new_wxPrePopupTransientWindow();
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    if (_result) {
         SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyPopupTransientWindow_p");
@@ -2315,10 +2549,10 @@ static PyObject *_wrap_wxPopupTransientWindow__setCallbackInfo(PyObject *self, P
   _arg2 = _obj2;
 }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxPopupTransientWindow__setCallbackInfo(_arg0,_arg1,_arg2);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxPopupTransientWindow__setCallbackInfo(_arg0,_arg1,_arg2);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -2352,10 +2586,10 @@ static PyObject *_wrap_wxPopupTransientWindow_Popup(PyObject *self, PyObject *ar
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxPopupTransientWindow_Popup(_arg0,_arg1);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxPopupTransientWindow_Popup(_arg0,_arg1);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
@@ -2380,185 +2614,2213 @@ static PyObject *_wrap_wxPopupTransientWindow_Dismiss(PyObject *self, PyObject *
         }
     }
 {
-    wxPy_BEGIN_ALLOW_THREADS;
-        wxPopupTransientWindow_Dismiss(_arg0);
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxPopupTransientWindow_Dismiss(_arg0);
 
-    wxPy_END_ALLOW_THREADS;
+    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) return NULL;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
     return _resultobj;
 }
 
-static PyMethodDef windows3cMethods[] = {
-        { "wxPopupTransientWindow_Dismiss", (PyCFunction) _wrap_wxPopupTransientWindow_Dismiss, METH_VARARGS | METH_KEYWORDS },
-        { "wxPopupTransientWindow_Popup", (PyCFunction) _wrap_wxPopupTransientWindow_Popup, METH_VARARGS | METH_KEYWORDS },
-        { "wxPopupTransientWindow__setCallbackInfo", (PyCFunction) _wrap_wxPopupTransientWindow__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPrePopupTransientWindow", (PyCFunction) _wrap_new_wxPrePopupTransientWindow, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPopupTransientWindow", (PyCFunction) _wrap_new_wxPopupTransientWindow, METH_VARARGS | METH_KEYWORDS },
-        { "wxPopupWindow_Position", (PyCFunction) _wrap_wxPopupWindow_Position, METH_VARARGS | METH_KEYWORDS },
-        { "wxPopupWindow_Create", (PyCFunction) _wrap_wxPopupWindow_Create, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPrePopupWindow", (PyCFunction) _wrap_new_wxPrePopupWindow, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPopupWindow", (PyCFunction) _wrap_new_wxPopupWindow, METH_VARARGS | METH_KEYWORDS },
-        { "wxLayoutAlgorithm_LayoutWindow", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutWindow, METH_VARARGS | METH_KEYWORDS },
-        { "wxLayoutAlgorithm_LayoutFrame", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutFrame, METH_VARARGS | METH_KEYWORDS },
-        { "wxLayoutAlgorithm_LayoutMDIFrame", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutMDIFrame, METH_VARARGS | METH_KEYWORDS },
-        { "delete_wxLayoutAlgorithm", (PyCFunction) _wrap_delete_wxLayoutAlgorithm, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxLayoutAlgorithm", (PyCFunction) _wrap_new_wxLayoutAlgorithm, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_SetOrientation", (PyCFunction) _wrap_wxSashLayoutWindow_SetOrientation, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_SetDefaultSize", (PyCFunction) _wrap_wxSashLayoutWindow_SetDefaultSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_SetAlignment", (PyCFunction) _wrap_wxSashLayoutWindow_SetAlignment, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_GetOrientation", (PyCFunction) _wrap_wxSashLayoutWindow_GetOrientation, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_GetAlignment", (PyCFunction) _wrap_wxSashLayoutWindow_GetAlignment, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashLayoutWindow_Create", (PyCFunction) _wrap_wxSashLayoutWindow_Create, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPreSashLayoutWindow", (PyCFunction) _wrap_new_wxPreSashLayoutWindow, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxSashLayoutWindow", (PyCFunction) _wrap_new_wxSashLayoutWindow, METH_VARARGS | METH_KEYWORDS },
-        { "wxCalculateLayoutEvent_GetRect", (PyCFunction) _wrap_wxCalculateLayoutEvent_GetRect, METH_VARARGS | METH_KEYWORDS },
-        { "wxCalculateLayoutEvent_SetRect", (PyCFunction) _wrap_wxCalculateLayoutEvent_SetRect, METH_VARARGS | METH_KEYWORDS },
-        { "wxCalculateLayoutEvent_GetFlags", (PyCFunction) _wrap_wxCalculateLayoutEvent_GetFlags, METH_VARARGS | METH_KEYWORDS },
-        { "wxCalculateLayoutEvent_SetFlags", (PyCFunction) _wrap_wxCalculateLayoutEvent_SetFlags, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxCalculateLayoutEvent", (PyCFunction) _wrap_new_wxCalculateLayoutEvent, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_GetAlignment", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetAlignment, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_SetAlignment", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetAlignment, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_GetOrientation", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetOrientation, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_SetOrientation", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetOrientation, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_GetSize", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_SetSize", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_GetFlags", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetFlags, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_SetFlags", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetFlags, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_GetRequestedLength", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetRequestedLength, METH_VARARGS | METH_KEYWORDS },
-        { "wxQueryLayoutInfoEvent_SetRequestedLength", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetRequestedLength, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxQueryLayoutInfoEvent", (PyCFunction) _wrap_new_wxQueryLayoutInfoEvent, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetSashBorder", (PyCFunction) _wrap_wxSashWindow_SetSashBorder, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetSashVisible", (PyCFunction) _wrap_wxSashWindow_SetSashVisible, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetMinimumSizeY", (PyCFunction) _wrap_wxSashWindow_SetMinimumSizeY, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetMinimumSizeX", (PyCFunction) _wrap_wxSashWindow_SetMinimumSizeX, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetMaximumSizeY", (PyCFunction) _wrap_wxSashWindow_SetMaximumSizeY, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetMaximumSizeX", (PyCFunction) _wrap_wxSashWindow_SetMaximumSizeX, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetExtraBorderSize", (PyCFunction) _wrap_wxSashWindow_SetExtraBorderSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_SetDefaultBorderSize", (PyCFunction) _wrap_wxSashWindow_SetDefaultBorderSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_HasBorder", (PyCFunction) _wrap_wxSashWindow_HasBorder, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetMinimumSizeY", (PyCFunction) _wrap_wxSashWindow_GetMinimumSizeY, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetMinimumSizeX", (PyCFunction) _wrap_wxSashWindow_GetMinimumSizeX, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetMaximumSizeY", (PyCFunction) _wrap_wxSashWindow_GetMaximumSizeY, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetMaximumSizeX", (PyCFunction) _wrap_wxSashWindow_GetMaximumSizeX, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetExtraBorderSize", (PyCFunction) _wrap_wxSashWindow_GetExtraBorderSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetEdgeMargin", (PyCFunction) _wrap_wxSashWindow_GetEdgeMargin, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetDefaultBorderSize", (PyCFunction) _wrap_wxSashWindow_GetDefaultBorderSize, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_GetSashVisible", (PyCFunction) _wrap_wxSashWindow_GetSashVisible, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashWindow_Create", (PyCFunction) _wrap_wxSashWindow_Create, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxPreSashWindow", (PyCFunction) _wrap_new_wxPreSashWindow, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxSashWindow", (PyCFunction) _wrap_new_wxSashWindow, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_GetDragStatus", (PyCFunction) _wrap_wxSashEvent_GetDragStatus, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_SetDragStatus", (PyCFunction) _wrap_wxSashEvent_SetDragStatus, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_GetDragRect", (PyCFunction) _wrap_wxSashEvent_GetDragRect, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_SetDragRect", (PyCFunction) _wrap_wxSashEvent_SetDragRect, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_GetEdge", (PyCFunction) _wrap_wxSashEvent_GetEdge, METH_VARARGS | METH_KEYWORDS },
-        { "wxSashEvent_SetEdge", (PyCFunction) _wrap_wxSashEvent_SetEdge, METH_VARARGS | METH_KEYWORDS },
-        { "new_wxSashEvent", (PyCFunction) _wrap_new_wxSashEvent, METH_VARARGS | METH_KEYWORDS },
-        { NULL, NULL }
-};
-#ifdef __cplusplus
+static void *SwigwxTipWindowTowxPyPopupTransientWindow(void *ptr) {
+    wxTipWindow *src;
+    wxPyPopupTransientWindow *dest;
+    src = (wxTipWindow *) ptr;
+    dest = (wxPyPopupTransientWindow *) src;
+    return (void *) dest;
 }
-#endif
-/*
- * This table is used by the pointer type-checker
- */
-static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
-    { "_wxEvent","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent},
-    { "_wxEvent","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent},
-    { "_wxEvent","_wxSashEvent",SwigwxSashEventTowxEvent},
-    { "_signed_long","_long",0},
-    { "_wxPrintQuality","_wxCoord",0},
-    { "_wxPrintQuality","_int",0},
-    { "_wxPrintQuality","_signed_int",0},
-    { "_wxPrintQuality","_unsigned_int",0},
-    { "_wxPrintQuality","_wxWindowID",0},
-    { "_wxPrintQuality","_uint",0},
-    { "_wxPrintQuality","_EBool",0},
-    { "_wxPrintQuality","_size_t",0},
-    { "_wxPrintQuality","_time_t",0},
-    { "_byte","_unsigned_char",0},
-    { "_long","_unsigned_long",0},
-    { "_long","_signed_long",0},
-    { "_wxSashWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow},
-    { "_size_t","_wxCoord",0},
-    { "_size_t","_wxPrintQuality",0},
-    { "_size_t","_time_t",0},
-    { "_size_t","_unsigned_int",0},
-    { "_size_t","_int",0},
-    { "_size_t","_wxWindowID",0},
-    { "_size_t","_uint",0},
-    { "_wxPopupWindow","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxPopupWindow},
-    { "_uint","_wxCoord",0},
-    { "_uint","_wxPrintQuality",0},
-    { "_uint","_time_t",0},
-    { "_uint","_size_t",0},
-    { "_uint","_unsigned_int",0},
-    { "_uint","_int",0},
-    { "_uint","_wxWindowID",0},
-    { "_wxChar","_char",0},
-    { "_wxCommandEvent","_wxSashEvent",SwigwxSashEventTowxCommandEvent},
-    { "_char","_wxChar",0},
-    { "_struct_wxNativeFontInfo","_wxNativeFontInfo",0},
-    { "_EBool","_wxCoord",0},
-    { "_EBool","_wxPrintQuality",0},
-    { "_EBool","_signed_int",0},
-    { "_EBool","_int",0},
-    { "_EBool","_wxWindowID",0},
-    { "_unsigned_long","_long",0},
-    { "_wxNativeFontInfo","_struct_wxNativeFontInfo",0},
-    { "_signed_int","_wxCoord",0},
-    { "_signed_int","_wxPrintQuality",0},
-    { "_signed_int","_EBool",0},
-    { "_signed_int","_wxWindowID",0},
-    { "_signed_int","_int",0},
-    { "_WXTYPE","_short",0},
-    { "_WXTYPE","_signed_short",0},
-    { "_WXTYPE","_unsigned_short",0},
-    { "_unsigned_short","_WXTYPE",0},
-    { "_unsigned_short","_short",0},
-    { "_wxObject","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxObject},
-    { "_wxObject","_wxPopupWindow",SwigwxPopupWindowTowxObject},
-    { "_wxObject","_wxLayoutAlgorithm",SwigwxLayoutAlgorithmTowxObject},
-    { "_wxObject","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxObject},
-    { "_wxObject","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxObject},
-    { "_wxObject","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxObject},
-    { "_wxObject","_wxSashWindow",SwigwxSashWindowTowxObject},
-    { "_wxObject","_wxSashEvent",SwigwxSashEventTowxObject},
-    { "_signed_short","_WXTYPE",0},
-    { "_signed_short","_short",0},
-    { "_unsigned_char","_byte",0},
-    { "_unsigned_int","_wxCoord",0},
-    { "_unsigned_int","_wxPrintQuality",0},
-    { "_unsigned_int","_time_t",0},
-    { "_unsigned_int","_size_t",0},
-    { "_unsigned_int","_uint",0},
-    { "_unsigned_int","_wxWindowID",0},
-    { "_unsigned_int","_int",0},
-    { "_short","_WXTYPE",0},
-    { "_short","_unsigned_short",0},
-    { "_short","_signed_short",0},
-    { "_wxWindowID","_wxCoord",0},
-    { "_wxWindowID","_wxPrintQuality",0},
-    { "_wxWindowID","_time_t",0},
-    { "_wxWindowID","_size_t",0},
-    { "_wxWindowID","_EBool",0},
-    { "_wxWindowID","_uint",0},
-    { "_wxWindowID","_int",0},
-    { "_wxWindowID","_signed_int",0},
-    { "_wxWindowID","_unsigned_int",0},
-    { "_int","_wxCoord",0},
-    { "_int","_wxPrintQuality",0},
-    { "_int","_time_t",0},
-    { "_int","_size_t",0},
-    { "_int","_EBool",0},
-    { "_int","_uint",0},
-    { "_int","_wxWindowID",0},
-    { "_int","_unsigned_int",0},
-    { "_int","_signed_int",0},
-    { "_time_t","_wxCoord",0},
-    { "_time_t","_wxPrintQuality",0},
+
+static void *SwigwxTipWindowTowxPopupWindow(void *ptr) {
+    wxTipWindow *src;
+    wxPopupWindow *dest;
+    src = (wxTipWindow *) ptr;
+    dest = (wxPopupWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxTipWindowTowxWindow(void *ptr) {
+    wxTipWindow *src;
+    wxWindow *dest;
+    src = (wxTipWindow *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxTipWindowTowxEvtHandler(void *ptr) {
+    wxTipWindow *src;
+    wxEvtHandler *dest;
+    src = (wxTipWindow *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxTipWindowTowxObject(void *ptr) {
+    wxTipWindow *src;
+    wxObject *dest;
+    src = (wxTipWindow *) ptr;
+    dest = (wxObject *) src;
+    return (void *) dest;
+}
+
+static wxTipWindow *new_wxTipWindow(wxWindow *parent,const wxString *text,wxCoord maxLength,wxRect *rectBound) {
+            wxString tmp = *text;
+            return new wxTipWindow(parent, tmp, maxLength, NULL, rectBound);
+        }
+
+static PyObject *_wrap_new_wxTipWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxTipWindow * _result;
+    wxWindow * _arg0;
+    wxString * _arg1;
+    wxCoord  _arg2 = (wxCoord ) 100;
+    wxRect * _arg3 = (wxRect *) NULL;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    wxRect  temp;
+    PyObject * _obj3 = 0;
+    char *_kwnames[] = { "parent","text","maxLength","rectBound", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|iO:new_wxTipWindow",_kwnames,&_argo0,&_obj1,&_arg2,&_obj3)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxTipWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+{
+    _arg1 = wxString_in_helper(_obj1);
+    if (_arg1 == NULL)
+        return NULL;
+}
+    if (_obj3)
+{
+    _arg3 = &temp;
+    if (! wxRect_helper(_obj3, &_arg3))
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxTipWindow *)new_wxTipWindow(_arg0,_arg1,_arg2,_arg3);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxTipWindow_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxTipWindow_SetBoundingRect(_swigobj,_swigarg0)  (_swigobj->SetBoundingRect(_swigarg0))
+static PyObject *_wrap_wxTipWindow_SetBoundingRect(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxTipWindow * _arg0;
+    wxRect * _arg1;
+    PyObject * _argo0 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","rectBound", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxTipWindow_SetBoundingRect",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTipWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTipWindow_SetBoundingRect. Expected _wxTipWindow_p.");
+        return NULL;
+        }
+    }
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxTipWindow_SetBoundingRect(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxTipWindow_Close(_swigobj)  (_swigobj->Close())
+static PyObject *_wrap_wxTipWindow_Close(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxTipWindow * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxTipWindow_Close",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxTipWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxTipWindow_Close. Expected _wxTipWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxTipWindow_Close(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxPyVScrolledWindowTowxPanel(void *ptr) {
+    wxPyVScrolledWindow *src;
+    wxPanel *dest;
+    src = (wxPyVScrolledWindow *) ptr;
+    dest = (wxPanel *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVScrolledWindowTowxWindow(void *ptr) {
+    wxPyVScrolledWindow *src;
+    wxWindow *dest;
+    src = (wxPyVScrolledWindow *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVScrolledWindowTowxEvtHandler(void *ptr) {
+    wxPyVScrolledWindow *src;
+    wxEvtHandler *dest;
+    src = (wxPyVScrolledWindow *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVScrolledWindowTowxObject(void *ptr) {
+    wxPyVScrolledWindow *src;
+    wxObject *dest;
+    src = (wxPyVScrolledWindow *) ptr;
+    dest = (wxObject *) src;
+    return (void *) dest;
+}
+
+#define new_wxVScrolledWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxPyVScrolledWindow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxVScrolledWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg2 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxDefaultSize;
+    long  _arg4 = (long ) 0;
+    wxString * _arg5 = (wxString *) &wxPyPanelNameStr;
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    PyObject * _obj5 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iOOlO:new_wxVScrolledWindow",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_obj5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxVScrolledWindow. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
+        return NULL;
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj5)
+{
+    _arg5 = wxString_in_helper(_obj5);
+    if (_arg5 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyVScrolledWindow *)new_wxVScrolledWindow(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyVScrolledWindow_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+{
+    if (_obj5)
+        delete _arg5;
+}
+    return _resultobj;
+}
+
+#define new_wxPreVScrolledWindow() (new wxPyVScrolledWindow())
+static PyObject *_wrap_new_wxPreVScrolledWindow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _result;
+    char *_kwnames[] = {  NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPreVScrolledWindow",_kwnames)) 
+        return NULL;
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyVScrolledWindow *)new_wxPreVScrolledWindow();
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyVScrolledWindow_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxVScrolledWindow__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVScrolledWindow__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _arg0;
+    PyObject * _arg1;
+    PyObject * _arg2;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","self","_class", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxVScrolledWindow__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow__setCallbackInfo. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+  _arg2 = _obj2;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVScrolledWindow__setCallbackInfo(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_Create(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->Create(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxVScrolledWindow_Create(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVScrolledWindow * _arg0;
+    wxWindow * _arg1;
+    wxWindowID  _arg2 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg3 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg4 = (wxSize *) &wxDefaultSize;
+    long  _arg5 = (long ) 0;
+    wxString * _arg6 = (wxString *) &wxPyPanelNameStr;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    wxPoint  temp;
+    PyObject * _obj3 = 0;
+    wxSize  temp0;
+    PyObject * _obj4 = 0;
+    PyObject * _obj6 = 0;
+    char *_kwnames[] = { "self","parent","id","pos","size","style","name", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|iOOlO:wxVScrolledWindow_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_obj6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_Create. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxVScrolledWindow_Create. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj3)
+{
+    _arg3 = &temp;
+    if (! wxPoint_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj4)
+{
+    _arg4 = &temp0;
+    if (! wxSize_helper(_obj4, &_arg4))
+        return NULL;
+}
+    if (_obj6)
+{
+    _arg6 = wxString_in_helper(_obj6);
+    if (_arg6 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVScrolledWindow_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj6)
+        delete _arg6;
+}
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_SetLineCount(_swigobj,_swigarg0)  (_swigobj->SetLineCount(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_SetLineCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","count", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_SetLineCount",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_SetLineCount. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVScrolledWindow_SetLineCount(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_ScrollToLine(_swigobj,_swigarg0)  (_swigobj->ScrollToLine(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_ScrollToLine(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVScrolledWindow * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","line", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_ScrollToLine",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_ScrollToLine. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVScrolledWindow_ScrollToLine(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_ScrollLines(_swigobj,_swigarg0)  (_swigobj->ScrollLines(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_ScrollLines(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVScrolledWindow * _arg0;
+    int  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","lines", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_ScrollLines",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_ScrollLines. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVScrolledWindow_ScrollLines(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_ScrollPages(_swigobj,_swigarg0)  (_swigobj->ScrollPages(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_ScrollPages(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVScrolledWindow * _arg0;
+    int  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","pages", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_ScrollPages",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_ScrollPages. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVScrolledWindow_ScrollPages(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_RefreshLine(_swigobj,_swigarg0)  (_swigobj->RefreshLine(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_RefreshLine(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","line", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_RefreshLine",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_RefreshLine. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVScrolledWindow_RefreshLine(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_RefreshLines(_swigobj,_swigarg0,_swigarg1)  (_swigobj->RefreshLines(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVScrolledWindow_RefreshLines(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _arg0;
+    size_t  _arg1;
+    size_t  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","from","to", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxVScrolledWindow_RefreshLines",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_RefreshLines. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVScrolledWindow_RefreshLines(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_HitTestXT(_swigobj,_swigarg0,_swigarg1)  (_swigobj->HitTest(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVScrolledWindow_HitTestXT(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxPyVScrolledWindow * _arg0;
+    wxCoord  _arg1;
+    wxCoord  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxVScrolledWindow_HitTestXT",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_HitTestXT. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxVScrolledWindow_HitTestXT(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_HitTest(_swigobj,_swigarg0)  (_swigobj->HitTest(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_HitTest(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxPyVScrolledWindow * _arg0;
+    wxPoint * _arg1;
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","pt", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxVScrolledWindow_HitTest",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_HitTest. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxVScrolledWindow_HitTest(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_RefreshAll(_swigobj)  (_swigobj->RefreshAll())
+static PyObject *_wrap_wxVScrolledWindow_RefreshAll(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVScrolledWindow * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVScrolledWindow_RefreshAll",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_RefreshAll. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVScrolledWindow_RefreshAll(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_GetLineCount(_swigobj)  (_swigobj->GetLineCount())
+static PyObject *_wrap_wxVScrolledWindow_GetLineCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    size_t  _result;
+    wxPyVScrolledWindow * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVScrolledWindow_GetLineCount",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_GetLineCount. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (size_t )wxVScrolledWindow_GetLineCount(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_GetFirstVisibleLine(_swigobj)  (_swigobj->GetFirstVisibleLine())
+static PyObject *_wrap_wxVScrolledWindow_GetFirstVisibleLine(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    size_t  _result;
+    wxPyVScrolledWindow * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVScrolledWindow_GetFirstVisibleLine",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_GetFirstVisibleLine. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (size_t )wxVScrolledWindow_GetFirstVisibleLine(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_GetLastVisibleLine(_swigobj)  (_swigobj->GetLastVisibleLine())
+static PyObject *_wrap_wxVScrolledWindow_GetLastVisibleLine(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    size_t  _result;
+    wxPyVScrolledWindow * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVScrolledWindow_GetLastVisibleLine",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_GetLastVisibleLine. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (size_t )wxVScrolledWindow_GetLastVisibleLine(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVScrolledWindow_IsVisible(_swigobj,_swigarg0)  (_swigobj->IsVisible(_swigarg0))
+static PyObject *_wrap_wxVScrolledWindow_IsVisible(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVScrolledWindow * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","line", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVScrolledWindow_IsVisible",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVScrolledWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVScrolledWindow_IsVisible. Expected _wxPyVScrolledWindow_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVScrolledWindow_IsVisible(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+static void *SwigwxPyVListBoxTowxPyVScrolledWindow(void *ptr) {
+    wxPyVListBox *src;
+    wxPyVScrolledWindow *dest;
+    src = (wxPyVListBox *) ptr;
+    dest = (wxPyVScrolledWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVListBoxTowxPanel(void *ptr) {
+    wxPyVListBox *src;
+    wxPanel *dest;
+    src = (wxPyVListBox *) ptr;
+    dest = (wxPanel *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVListBoxTowxWindow(void *ptr) {
+    wxPyVListBox *src;
+    wxWindow *dest;
+    src = (wxPyVListBox *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVListBoxTowxEvtHandler(void *ptr) {
+    wxPyVListBox *src;
+    wxEvtHandler *dest;
+    src = (wxPyVListBox *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyVListBoxTowxObject(void *ptr) {
+    wxPyVListBox *src;
+    wxObject *dest;
+    src = (wxPyVListBox *) ptr;
+    dest = (wxObject *) src;
+    return (void *) dest;
+}
+
+#define new_wxVListBox(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxPyVListBox(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxVListBox(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg2 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxDefaultSize;
+    long  _arg4 = (long ) 0;
+    wxString * _arg5 = (wxString *) &wxPyVListBoxNameStr;
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    PyObject * _obj5 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iOOlO:new_wxVListBox",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_obj5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxVListBox. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
+        return NULL;
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj5)
+{
+    _arg5 = wxString_in_helper(_obj5);
+    if (_arg5 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyVListBox *)new_wxVListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyVListBox_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+{
+    if (_obj5)
+        delete _arg5;
+}
+    return _resultobj;
+}
+
+#define new_wxPreVListBox() (new wxPyVListBox())
+static PyObject *_wrap_new_wxPreVListBox(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _result;
+    char *_kwnames[] = {  NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPreVListBox",_kwnames)) 
+        return NULL;
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyVListBox *)new_wxPreVListBox();
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyVListBox_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxVListBox__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVListBox__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    PyObject * _arg1;
+    PyObject * _arg2;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","self","_class", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxVListBox__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox__setCallbackInfo. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+  _arg2 = _obj2;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox__setCallbackInfo(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_Create(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->Create(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxVListBox_Create(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    wxWindow * _arg1;
+    wxWindowID  _arg2 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg3 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg4 = (wxSize *) &wxDefaultSize;
+    long  _arg5 = (long ) 0;
+    wxString * _arg6 = (wxString *) &wxPyVListBoxNameStr;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    wxPoint  temp;
+    PyObject * _obj3 = 0;
+    wxSize  temp0;
+    PyObject * _obj4 = 0;
+    PyObject * _obj6 = 0;
+    char *_kwnames[] = { "self","parent","id","pos","size","style","name", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|iOOlO:wxVListBox_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_obj6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_Create. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxVListBox_Create. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj3)
+{
+    _arg3 = &temp;
+    if (! wxPoint_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj4)
+{
+    _arg4 = &temp0;
+    if (! wxSize_helper(_obj4, &_arg4))
+        return NULL;
+}
+    if (_obj6)
+{
+    _arg6 = wxString_in_helper(_obj6);
+    if (_arg6 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj6)
+        delete _arg6;
+}
+    return _resultobj;
+}
+
+#define wxVListBox_GetItemCount(_swigobj)  (_swigobj->GetItemCount())
+static PyObject *_wrap_wxVListBox_GetItemCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    size_t  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_GetItemCount",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetItemCount. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (size_t )wxVListBox_GetItemCount(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_HasMultipleSelection(_swigobj)  (_swigobj->HasMultipleSelection())
+static PyObject *_wrap_wxVListBox_HasMultipleSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_HasMultipleSelection",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_HasMultipleSelection. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_HasMultipleSelection(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_GetSelection(_swigobj)  (_swigobj->GetSelection())
+static PyObject *_wrap_wxVListBox_GetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_GetSelection",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetSelection. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxVListBox_GetSelection(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_IsCurrent(_swigobj,_swigarg0)  (_swigobj->IsCurrent(_swigarg0))
+static PyObject *_wrap_wxVListBox_IsCurrent(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","item", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVListBox_IsCurrent",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_IsCurrent. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_IsCurrent(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_IsSelected(_swigobj,_swigarg0)  (_swigobj->IsSelected(_swigarg0))
+static PyObject *_wrap_wxVListBox_IsSelected(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","item", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVListBox_IsSelected",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_IsSelected. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_IsSelected(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_GetSelectedCount(_swigobj)  (_swigobj->GetSelectedCount())
+static PyObject *_wrap_wxVListBox_GetSelectedCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    size_t  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_GetSelectedCount",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetSelectedCount. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (size_t )wxVListBox_GetSelectedCount(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_GetFirstSelected(_swigobj,_swigarg0)  (_swigobj->GetFirstSelected(_swigarg0))
+static PyObject *_wrap_wxVListBox_GetFirstSelected(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxPyVListBox * _arg0;
+    unsigned long * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","cookie", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxVListBox_GetFirstSelected",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetFirstSelected. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_unsigned_long_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxVListBox_GetFirstSelected. Expected _unsigned_long_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxVListBox_GetFirstSelected(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_GetNextSelected(_swigobj,_swigarg0)  (_swigobj->GetNextSelected(_swigarg0))
+static PyObject *_wrap_wxVListBox_GetNextSelected(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxPyVListBox * _arg0;
+    unsigned long * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","cookie", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxVListBox_GetNextSelected",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetNextSelected. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_unsigned_long_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxVListBox_GetNextSelected. Expected _unsigned_long_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (int )wxVListBox_GetNextSelected(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_GetMargins(_swigobj)  (_swigobj->GetMargins())
+static PyObject *_wrap_wxVListBox_GetMargins(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPoint * _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_GetMargins",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetMargins. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = new wxPoint (wxVListBox_GetMargins(_arg0));
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    SWIG_MakePtr(_ptemp, (void *) _result,"_wxPoint_p");
+    _resultobj = Py_BuildValue("s",_ptemp);
+    return _resultobj;
+}
+
+#define wxVListBox_GetSelectionBackground(_swigobj)  (_swigobj->GetSelectionBackground())
+static PyObject *_wrap_wxVListBox_GetSelectionBackground(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxColour * _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_GetSelectionBackground",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_GetSelectionBackground. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    const wxColour & _result_ref = wxVListBox_GetSelectionBackground(_arg0);
+    _result = (wxColour *) &_result_ref;
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxColour_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxVListBox_SetItemCount(_swigobj,_swigarg0)  (_swigobj->SetItemCount(_swigarg0))
+static PyObject *_wrap_wxVListBox_SetItemCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","count", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVListBox_SetItemCount",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SetItemCount. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_SetItemCount(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_Clear(_swigobj)  (_swigobj->Clear())
+static PyObject *_wrap_wxVListBox_Clear(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_Clear",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_Clear. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_Clear(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_SetSelection(_swigobj,_swigarg0)  (_swigobj->SetSelection(_swigarg0))
+static PyObject *_wrap_wxVListBox_SetSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    int  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","selection", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVListBox_SetSelection",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SetSelection. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_SetSelection(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_Select(_swigobj,_swigarg0,_swigarg1)  (_swigobj->Select(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVListBox_Select(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    bool  _arg2 = (bool ) true;
+    PyObject * _argo0 = 0;
+    int tempbool2 = (int) true;
+    char *_kwnames[] = { "self","item","select", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|i:wxVListBox_Select",_kwnames,&_argo0,&_arg1,&tempbool2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_Select. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_Select(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_SelectRange(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SelectRange(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVListBox_SelectRange(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    size_t  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","from","to", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxVListBox_SelectRange",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SelectRange. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_SelectRange(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_Toggle(_swigobj,_swigarg0)  (_swigobj->Toggle(_swigarg0))
+static PyObject *_wrap_wxVListBox_Toggle(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","item", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxVListBox_Toggle",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_Toggle. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_Toggle(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_SelectAll(_swigobj)  (_swigobj->SelectAll())
+static PyObject *_wrap_wxVListBox_SelectAll(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_SelectAll",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SelectAll. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_SelectAll(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_DeselectAll(_swigobj)  (_swigobj->DeselectAll())
+static PyObject *_wrap_wxVListBox_DeselectAll(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyVListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxVListBox_DeselectAll",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_DeselectAll. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxVListBox_DeselectAll(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxVListBox_SetMargins(_swigobj,_swigarg0)  (_swigobj->SetMargins(_swigarg0))
+static PyObject *_wrap_wxVListBox_SetMargins(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    wxPoint * _arg1;
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","pt", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxVListBox_SetMargins",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SetMargins. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_SetMargins(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_SetMarginsXY(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetMargins(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxVListBox_SetMarginsXY(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    wxCoord  _arg1;
+    wxCoord  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxVListBox_SetMarginsXY",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SetMarginsXY. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_SetMarginsXY(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxVListBox_SetSelectionBackground(_swigobj,_swigarg0)  (_swigobj->SetSelectionBackground(_swigarg0))
+static PyObject *_wrap_wxVListBox_SetSelectionBackground(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyVListBox * _arg0;
+    wxColour * _arg1;
+    PyObject * _argo0 = 0;
+    wxColour  temp;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","col", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxVListBox_SetSelectionBackground",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyVListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxVListBox_SetSelectionBackground. Expected _wxPyVListBox_p.");
+        return NULL;
+        }
+    }
+{
+    _arg1 = &temp;
+    if (! wxColour_helper(_obj1, &_arg1))
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxVListBox_SetSelectionBackground(_arg0,*_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxPyHtmlListBoxTowxPyVListBox(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxPyVListBox *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxPyVListBox *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyHtmlListBoxTowxPyVScrolledWindow(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxPyVScrolledWindow *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxPyVScrolledWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyHtmlListBoxTowxPanel(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxPanel *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxPanel *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyHtmlListBoxTowxWindow(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxWindow *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxWindow *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyHtmlListBoxTowxEvtHandler(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxEvtHandler *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxEvtHandler *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyHtmlListBoxTowxObject(void *ptr) {
+    wxPyHtmlListBox *src;
+    wxObject *dest;
+    src = (wxPyHtmlListBox *) ptr;
+    dest = (wxObject *) src;
+    return (void *) dest;
+}
+
+#define new_wxHtmlListBox(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxPyHtmlListBox(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxHtmlListBox(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyHtmlListBox * _result;
+    wxWindow * _arg0;
+    wxWindowID  _arg1 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg2 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg3 = (wxSize *) &wxDefaultSize;
+    long  _arg4 = (long ) 0;
+    wxString * _arg5 = (wxString *) &wxPyVListBoxNameStr;
+    PyObject * _argo0 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
+    wxSize  temp0;
+    PyObject * _obj3 = 0;
+    PyObject * _obj5 = 0;
+    char *_kwnames[] = { "parent","id","pos","size","style","name", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|iOOlO:new_wxHtmlListBox",_kwnames,&_argo0,&_arg1,&_obj2,&_obj3,&_arg4,&_obj5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxHtmlListBox. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj2)
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
+        return NULL;
+}
+    if (_obj3)
+{
+    _arg3 = &temp0;
+    if (! wxSize_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj5)
+{
+    _arg5 = wxString_in_helper(_obj5);
+    if (_arg5 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyHtmlListBox *)new_wxHtmlListBox(_arg0,_arg1,*_arg2,*_arg3,_arg4,*_arg5);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyHtmlListBox_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+{
+    if (_obj5)
+        delete _arg5;
+}
+    return _resultobj;
+}
+
+#define new_wxPreHtmlListBox() (new wxPyHtmlListBox())
+static PyObject *_wrap_new_wxPreHtmlListBox(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyHtmlListBox * _result;
+    char *_kwnames[] = {  NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPreHtmlListBox",_kwnames)) 
+        return NULL;
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (wxPyHtmlListBox *)new_wxPreHtmlListBox();
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyHtmlListBox_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxHtmlListBox__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxHtmlListBox__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyHtmlListBox * _arg0;
+    PyObject * _arg1;
+    PyObject * _arg2;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    PyObject * _obj2 = 0;
+    char *_kwnames[] = { "self","self","_class", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxHtmlListBox__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyHtmlListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxHtmlListBox__setCallbackInfo. Expected _wxPyHtmlListBox_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+  _arg2 = _obj2;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxHtmlListBox__setCallbackInfo(_arg0,_arg1,_arg2);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxHtmlListBox_Create(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->Create(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxHtmlListBox_Create(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyHtmlListBox * _arg0;
+    wxWindow * _arg1;
+    wxWindowID  _arg2 = (wxWindowID ) wxID_ANY;
+    wxPoint * _arg3 = (wxPoint *) &wxDefaultPosition;
+    wxSize * _arg4 = (wxSize *) &wxDefaultSize;
+    long  _arg5 = (long ) 0;
+    wxString * _arg6 = (wxString *) &wxPyVListBoxNameStr;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    wxPoint  temp;
+    PyObject * _obj3 = 0;
+    wxSize  temp0;
+    PyObject * _obj4 = 0;
+    PyObject * _obj6 = 0;
+    char *_kwnames[] = { "self","parent","id","pos","size","style","name", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|iOOlO:wxHtmlListBox_Create",_kwnames,&_argo0,&_argo1,&_arg2,&_obj3,&_obj4,&_arg5,&_obj6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyHtmlListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxHtmlListBox_Create. Expected _wxPyHtmlListBox_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxWindow_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxHtmlListBox_Create. Expected _wxWindow_p.");
+        return NULL;
+        }
+    }
+    if (_obj3)
+{
+    _arg3 = &temp;
+    if (! wxPoint_helper(_obj3, &_arg3))
+        return NULL;
+}
+    if (_obj4)
+{
+    _arg4 = &temp0;
+    if (! wxSize_helper(_obj4, &_arg4))
+        return NULL;
+}
+    if (_obj6)
+{
+    _arg6 = wxString_in_helper(_obj6);
+    if (_arg6 == NULL)
+        return NULL;
+}
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    _result = (bool )wxHtmlListBox_Create(_arg0,_arg1,_arg2,*_arg3,*_arg4,_arg5,*_arg6);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+{
+    if (_obj6)
+        delete _arg6;
+}
+    return _resultobj;
+}
+
+#define wxHtmlListBox_RefreshAll(_swigobj)  (_swigobj->RefreshAll())
+static PyObject *_wrap_wxHtmlListBox_RefreshAll(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyHtmlListBox * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxHtmlListBox_RefreshAll",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyHtmlListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxHtmlListBox_RefreshAll. Expected _wxPyHtmlListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxHtmlListBox_RefreshAll(_arg0);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxHtmlListBox_SetItemCount(_swigobj,_swigarg0)  (_swigobj->SetItemCount(_swigarg0))
+static PyObject *_wrap_wxHtmlListBox_SetItemCount(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyHtmlListBox * _arg0;
+    size_t  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","count", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxHtmlListBox_SetItemCount",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyHtmlListBox_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxHtmlListBox_SetItemCount. Expected _wxPyHtmlListBox_p.");
+        return NULL;
+        }
+    }
+{
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxHtmlListBox_SetItemCount(_arg0,_arg1);
+
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static PyMethodDef windows3cMethods[] = {
+        { "wxHtmlListBox_SetItemCount", (PyCFunction) _wrap_wxHtmlListBox_SetItemCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxHtmlListBox_RefreshAll", (PyCFunction) _wrap_wxHtmlListBox_RefreshAll, METH_VARARGS | METH_KEYWORDS },
+        { "wxHtmlListBox_Create", (PyCFunction) _wrap_wxHtmlListBox_Create, METH_VARARGS | METH_KEYWORDS },
+        { "wxHtmlListBox__setCallbackInfo", (PyCFunction) _wrap_wxHtmlListBox__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPreHtmlListBox", (PyCFunction) _wrap_new_wxPreHtmlListBox, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxHtmlListBox", (PyCFunction) _wrap_new_wxHtmlListBox, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SetSelectionBackground", (PyCFunction) _wrap_wxVListBox_SetSelectionBackground, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SetMarginsXY", (PyCFunction) _wrap_wxVListBox_SetMarginsXY, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SetMargins", (PyCFunction) _wrap_wxVListBox_SetMargins, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_DeselectAll", (PyCFunction) _wrap_wxVListBox_DeselectAll, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SelectAll", (PyCFunction) _wrap_wxVListBox_SelectAll, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_Toggle", (PyCFunction) _wrap_wxVListBox_Toggle, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SelectRange", (PyCFunction) _wrap_wxVListBox_SelectRange, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_Select", (PyCFunction) _wrap_wxVListBox_Select, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SetSelection", (PyCFunction) _wrap_wxVListBox_SetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_Clear", (PyCFunction) _wrap_wxVListBox_Clear, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_SetItemCount", (PyCFunction) _wrap_wxVListBox_SetItemCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetSelectionBackground", (PyCFunction) _wrap_wxVListBox_GetSelectionBackground, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetMargins", (PyCFunction) _wrap_wxVListBox_GetMargins, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetNextSelected", (PyCFunction) _wrap_wxVListBox_GetNextSelected, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetFirstSelected", (PyCFunction) _wrap_wxVListBox_GetFirstSelected, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetSelectedCount", (PyCFunction) _wrap_wxVListBox_GetSelectedCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_IsSelected", (PyCFunction) _wrap_wxVListBox_IsSelected, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_IsCurrent", (PyCFunction) _wrap_wxVListBox_IsCurrent, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetSelection", (PyCFunction) _wrap_wxVListBox_GetSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_HasMultipleSelection", (PyCFunction) _wrap_wxVListBox_HasMultipleSelection, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_GetItemCount", (PyCFunction) _wrap_wxVListBox_GetItemCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox_Create", (PyCFunction) _wrap_wxVListBox_Create, METH_VARARGS | METH_KEYWORDS },
+        { "wxVListBox__setCallbackInfo", (PyCFunction) _wrap_wxVListBox__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPreVListBox", (PyCFunction) _wrap_new_wxPreVListBox, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxVListBox", (PyCFunction) _wrap_new_wxVListBox, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_IsVisible", (PyCFunction) _wrap_wxVScrolledWindow_IsVisible, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_GetLastVisibleLine", (PyCFunction) _wrap_wxVScrolledWindow_GetLastVisibleLine, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_GetFirstVisibleLine", (PyCFunction) _wrap_wxVScrolledWindow_GetFirstVisibleLine, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_GetLineCount", (PyCFunction) _wrap_wxVScrolledWindow_GetLineCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_RefreshAll", (PyCFunction) _wrap_wxVScrolledWindow_RefreshAll, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_HitTest", (PyCFunction) _wrap_wxVScrolledWindow_HitTest, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_HitTestXT", (PyCFunction) _wrap_wxVScrolledWindow_HitTestXT, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_RefreshLines", (PyCFunction) _wrap_wxVScrolledWindow_RefreshLines, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_RefreshLine", (PyCFunction) _wrap_wxVScrolledWindow_RefreshLine, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_ScrollPages", (PyCFunction) _wrap_wxVScrolledWindow_ScrollPages, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_ScrollLines", (PyCFunction) _wrap_wxVScrolledWindow_ScrollLines, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_ScrollToLine", (PyCFunction) _wrap_wxVScrolledWindow_ScrollToLine, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_SetLineCount", (PyCFunction) _wrap_wxVScrolledWindow_SetLineCount, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow_Create", (PyCFunction) _wrap_wxVScrolledWindow_Create, METH_VARARGS | METH_KEYWORDS },
+        { "wxVScrolledWindow__setCallbackInfo", (PyCFunction) _wrap_wxVScrolledWindow__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPreVScrolledWindow", (PyCFunction) _wrap_new_wxPreVScrolledWindow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxVScrolledWindow", (PyCFunction) _wrap_new_wxVScrolledWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxTipWindow_Close", (PyCFunction) _wrap_wxTipWindow_Close, METH_VARARGS | METH_KEYWORDS },
+        { "wxTipWindow_SetBoundingRect", (PyCFunction) _wrap_wxTipWindow_SetBoundingRect, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxTipWindow", (PyCFunction) _wrap_new_wxTipWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxPopupTransientWindow_Dismiss", (PyCFunction) _wrap_wxPopupTransientWindow_Dismiss, METH_VARARGS | METH_KEYWORDS },
+        { "wxPopupTransientWindow_Popup", (PyCFunction) _wrap_wxPopupTransientWindow_Popup, METH_VARARGS | METH_KEYWORDS },
+        { "wxPopupTransientWindow__setCallbackInfo", (PyCFunction) _wrap_wxPopupTransientWindow__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPrePopupTransientWindow", (PyCFunction) _wrap_new_wxPrePopupTransientWindow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPopupTransientWindow", (PyCFunction) _wrap_new_wxPopupTransientWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxPopupWindow_Position", (PyCFunction) _wrap_wxPopupWindow_Position, METH_VARARGS | METH_KEYWORDS },
+        { "wxPopupWindow_Create", (PyCFunction) _wrap_wxPopupWindow_Create, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPrePopupWindow", (PyCFunction) _wrap_new_wxPrePopupWindow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPopupWindow", (PyCFunction) _wrap_new_wxPopupWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxLayoutAlgorithm_LayoutWindow", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxLayoutAlgorithm_LayoutFrame", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutFrame, METH_VARARGS | METH_KEYWORDS },
+        { "wxLayoutAlgorithm_LayoutMDIFrame", (PyCFunction) _wrap_wxLayoutAlgorithm_LayoutMDIFrame, METH_VARARGS | METH_KEYWORDS },
+        { "delete_wxLayoutAlgorithm", (PyCFunction) _wrap_delete_wxLayoutAlgorithm, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxLayoutAlgorithm", (PyCFunction) _wrap_new_wxLayoutAlgorithm, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_SetOrientation", (PyCFunction) _wrap_wxSashLayoutWindow_SetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_SetDefaultSize", (PyCFunction) _wrap_wxSashLayoutWindow_SetDefaultSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_SetAlignment", (PyCFunction) _wrap_wxSashLayoutWindow_SetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_GetOrientation", (PyCFunction) _wrap_wxSashLayoutWindow_GetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_GetAlignment", (PyCFunction) _wrap_wxSashLayoutWindow_GetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashLayoutWindow_Create", (PyCFunction) _wrap_wxSashLayoutWindow_Create, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPreSashLayoutWindow", (PyCFunction) _wrap_new_wxPreSashLayoutWindow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxSashLayoutWindow", (PyCFunction) _wrap_new_wxSashLayoutWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxCalculateLayoutEvent_GetRect", (PyCFunction) _wrap_wxCalculateLayoutEvent_GetRect, METH_VARARGS | METH_KEYWORDS },
+        { "wxCalculateLayoutEvent_SetRect", (PyCFunction) _wrap_wxCalculateLayoutEvent_SetRect, METH_VARARGS | METH_KEYWORDS },
+        { "wxCalculateLayoutEvent_GetFlags", (PyCFunction) _wrap_wxCalculateLayoutEvent_GetFlags, METH_VARARGS | METH_KEYWORDS },
+        { "wxCalculateLayoutEvent_SetFlags", (PyCFunction) _wrap_wxCalculateLayoutEvent_SetFlags, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxCalculateLayoutEvent", (PyCFunction) _wrap_new_wxCalculateLayoutEvent, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_GetAlignment", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_SetAlignment", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetAlignment, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_GetOrientation", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_SetOrientation", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetOrientation, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_GetSize", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_SetSize", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_GetFlags", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetFlags, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_SetFlags", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetFlags, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_GetRequestedLength", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_GetRequestedLength, METH_VARARGS | METH_KEYWORDS },
+        { "wxQueryLayoutInfoEvent_SetRequestedLength", (PyCFunction) _wrap_wxQueryLayoutInfoEvent_SetRequestedLength, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxQueryLayoutInfoEvent", (PyCFunction) _wrap_new_wxQueryLayoutInfoEvent, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetSashBorder", (PyCFunction) _wrap_wxSashWindow_SetSashBorder, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetSashVisible", (PyCFunction) _wrap_wxSashWindow_SetSashVisible, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetMinimumSizeY", (PyCFunction) _wrap_wxSashWindow_SetMinimumSizeY, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetMinimumSizeX", (PyCFunction) _wrap_wxSashWindow_SetMinimumSizeX, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetMaximumSizeY", (PyCFunction) _wrap_wxSashWindow_SetMaximumSizeY, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetMaximumSizeX", (PyCFunction) _wrap_wxSashWindow_SetMaximumSizeX, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetExtraBorderSize", (PyCFunction) _wrap_wxSashWindow_SetExtraBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_SetDefaultBorderSize", (PyCFunction) _wrap_wxSashWindow_SetDefaultBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_HasBorder", (PyCFunction) _wrap_wxSashWindow_HasBorder, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetMinimumSizeY", (PyCFunction) _wrap_wxSashWindow_GetMinimumSizeY, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetMinimumSizeX", (PyCFunction) _wrap_wxSashWindow_GetMinimumSizeX, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetMaximumSizeY", (PyCFunction) _wrap_wxSashWindow_GetMaximumSizeY, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetMaximumSizeX", (PyCFunction) _wrap_wxSashWindow_GetMaximumSizeX, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetExtraBorderSize", (PyCFunction) _wrap_wxSashWindow_GetExtraBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetEdgeMargin", (PyCFunction) _wrap_wxSashWindow_GetEdgeMargin, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetDefaultBorderSize", (PyCFunction) _wrap_wxSashWindow_GetDefaultBorderSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_GetSashVisible", (PyCFunction) _wrap_wxSashWindow_GetSashVisible, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashWindow_Create", (PyCFunction) _wrap_wxSashWindow_Create, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPreSashWindow", (PyCFunction) _wrap_new_wxPreSashWindow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxSashWindow", (PyCFunction) _wrap_new_wxSashWindow, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_GetDragStatus", (PyCFunction) _wrap_wxSashEvent_GetDragStatus, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_SetDragStatus", (PyCFunction) _wrap_wxSashEvent_SetDragStatus, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_GetDragRect", (PyCFunction) _wrap_wxSashEvent_GetDragRect, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_SetDragRect", (PyCFunction) _wrap_wxSashEvent_SetDragRect, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_GetEdge", (PyCFunction) _wrap_wxSashEvent_GetEdge, METH_VARARGS | METH_KEYWORDS },
+        { "wxSashEvent_SetEdge", (PyCFunction) _wrap_wxSashEvent_SetEdge, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxSashEvent", (PyCFunction) _wrap_new_wxSashEvent, METH_VARARGS | METH_KEYWORDS },
+        { NULL, NULL }
+};
+#ifdef __cplusplus
+}
+#endif
+/*
+ * This table is used by the pointer type-checker
+ */
+static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
+    { "_wxEvent","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxEvent},
+    { "_wxEvent","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxEvent},
+    { "_wxEvent","_wxSashEvent",SwigwxSashEventTowxEvent},
+    { "_signed_long","_long",0},
+    { "_wxPrintQuality","_wxCoord",0},
+    { "_wxPrintQuality","_int",0},
+    { "_wxPrintQuality","_signed_int",0},
+    { "_wxPrintQuality","_unsigned_int",0},
+    { "_wxPrintQuality","_wxWindowID",0},
+    { "_wxPrintQuality","_uint",0},
+    { "_wxPrintQuality","_EBool",0},
+    { "_wxPrintQuality","_size_t",0},
+    { "_wxPrintQuality","_time_t",0},
+    { "_wxPyPopupTransientWindow","_wxTipWindow",SwigwxTipWindowTowxPyPopupTransientWindow},
+    { "_byte","_unsigned_char",0},
+    { "_long","_unsigned_long",0},
+    { "_long","_signed_long",0},
+    { "_wxSashWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxSashWindow},
+    { "_size_t","_wxCoord",0},
+    { "_size_t","_wxPrintQuality",0},
+    { "_size_t","_time_t",0},
+    { "_size_t","_unsigned_int",0},
+    { "_size_t","_int",0},
+    { "_size_t","_wxWindowID",0},
+    { "_size_t","_uint",0},
+    { "_wxPopupWindow","_wxTipWindow",SwigwxTipWindowTowxPopupWindow},
+    { "_wxPopupWindow","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxPopupWindow},
+    { "_wxPanel","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxPanel},
+    { "_wxPanel","_wxPyVListBox",SwigwxPyVListBoxTowxPanel},
+    { "_wxPanel","_wxPyVScrolledWindow",SwigwxPyVScrolledWindowTowxPanel},
+    { "_uint","_wxCoord",0},
+    { "_uint","_wxPrintQuality",0},
+    { "_uint","_time_t",0},
+    { "_uint","_size_t",0},
+    { "_uint","_unsigned_int",0},
+    { "_uint","_int",0},
+    { "_uint","_wxWindowID",0},
+    { "_wxChar","_char",0},
+    { "_wxCommandEvent","_wxSashEvent",SwigwxSashEventTowxCommandEvent},
+    { "_char","_wxChar",0},
+    { "_struct_wxNativeFontInfo","_wxNativeFontInfo",0},
+    { "_EBool","_wxCoord",0},
+    { "_EBool","_wxPrintQuality",0},
+    { "_EBool","_signed_int",0},
+    { "_EBool","_int",0},
+    { "_EBool","_wxWindowID",0},
+    { "_unsigned_long","_long",0},
+    { "_wxNativeFontInfo","_struct_wxNativeFontInfo",0},
+    { "_signed_int","_wxCoord",0},
+    { "_signed_int","_wxPrintQuality",0},
+    { "_signed_int","_EBool",0},
+    { "_signed_int","_wxWindowID",0},
+    { "_signed_int","_int",0},
+    { "_WXTYPE","_short",0},
+    { "_WXTYPE","_signed_short",0},
+    { "_WXTYPE","_unsigned_short",0},
+    { "_unsigned_short","_WXTYPE",0},
+    { "_unsigned_short","_short",0},
+    { "_wxObject","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxObject},
+    { "_wxObject","_wxPyVListBox",SwigwxPyVListBoxTowxObject},
+    { "_wxObject","_wxPyVScrolledWindow",SwigwxPyVScrolledWindowTowxObject},
+    { "_wxObject","_wxTipWindow",SwigwxTipWindowTowxObject},
+    { "_wxObject","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxObject},
+    { "_wxObject","_wxPopupWindow",SwigwxPopupWindowTowxObject},
+    { "_wxObject","_wxLayoutAlgorithm",SwigwxLayoutAlgorithmTowxObject},
+    { "_wxObject","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxObject},
+    { "_wxObject","_wxCalculateLayoutEvent",SwigwxCalculateLayoutEventTowxObject},
+    { "_wxObject","_wxQueryLayoutInfoEvent",SwigwxQueryLayoutInfoEventTowxObject},
+    { "_wxObject","_wxSashWindow",SwigwxSashWindowTowxObject},
+    { "_wxObject","_wxSashEvent",SwigwxSashEventTowxObject},
+    { "_wxPyVScrolledWindow","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxPyVScrolledWindow},
+    { "_wxPyVScrolledWindow","_wxPyVListBox",SwigwxPyVListBoxTowxPyVScrolledWindow},
+    { "_signed_short","_WXTYPE",0},
+    { "_signed_short","_short",0},
+    { "_unsigned_char","_byte",0},
+    { "_unsigned_int","_wxCoord",0},
+    { "_unsigned_int","_wxPrintQuality",0},
+    { "_unsigned_int","_time_t",0},
+    { "_unsigned_int","_size_t",0},
+    { "_unsigned_int","_uint",0},
+    { "_unsigned_int","_wxWindowID",0},
+    { "_unsigned_int","_int",0},
+    { "_short","_WXTYPE",0},
+    { "_short","_unsigned_short",0},
+    { "_short","_signed_short",0},
+    { "_wxWindowID","_wxCoord",0},
+    { "_wxWindowID","_wxPrintQuality",0},
+    { "_wxWindowID","_time_t",0},
+    { "_wxWindowID","_size_t",0},
+    { "_wxWindowID","_EBool",0},
+    { "_wxWindowID","_uint",0},
+    { "_wxWindowID","_int",0},
+    { "_wxWindowID","_signed_int",0},
+    { "_wxWindowID","_unsigned_int",0},
+    { "_int","_wxCoord",0},
+    { "_int","_wxPrintQuality",0},
+    { "_int","_time_t",0},
+    { "_int","_size_t",0},
+    { "_int","_EBool",0},
+    { "_int","_uint",0},
+    { "_int","_wxWindowID",0},
+    { "_int","_unsigned_int",0},
+    { "_int","_signed_int",0},
+    { "_time_t","_wxCoord",0},
+    { "_time_t","_wxPrintQuality",0},
     { "_time_t","_unsigned_int",0},
     { "_time_t","_int",0},
     { "_time_t","_wxWindowID",0},
@@ -2573,14 +4835,23 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxCoord","_size_t",0},
     { "_wxCoord","_time_t",0},
     { "_wxCoord","_wxPrintQuality",0},
+    { "_wxEvtHandler","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxEvtHandler},
+    { "_wxEvtHandler","_wxPyVListBox",SwigwxPyVListBoxTowxEvtHandler},
+    { "_wxEvtHandler","_wxPyVScrolledWindow",SwigwxPyVScrolledWindowTowxEvtHandler},
+    { "_wxEvtHandler","_wxTipWindow",SwigwxTipWindowTowxEvtHandler},
     { "_wxEvtHandler","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxEvtHandler},
     { "_wxEvtHandler","_wxPopupWindow",SwigwxPopupWindowTowxEvtHandler},
     { "_wxEvtHandler","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxEvtHandler},
     { "_wxEvtHandler","_wxSashWindow",SwigwxSashWindowTowxEvtHandler},
+    { "_wxWindow","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxWindow},
+    { "_wxWindow","_wxPyVListBox",SwigwxPyVListBoxTowxWindow},
+    { "_wxWindow","_wxPyVScrolledWindow",SwigwxPyVScrolledWindowTowxWindow},
+    { "_wxWindow","_wxTipWindow",SwigwxTipWindowTowxWindow},
     { "_wxWindow","_wxPyPopupTransientWindow",SwigwxPyPopupTransientWindowTowxWindow},
     { "_wxWindow","_wxPopupWindow",SwigwxPopupWindowTowxWindow},
     { "_wxWindow","_wxSashLayoutWindow",SwigwxSashLayoutWindowTowxWindow},
     { "_wxWindow","_wxSashWindow",SwigwxSashWindowTowxWindow},
+    { "_wxPyVListBox","_wxPyHtmlListBox",SwigwxPyHtmlListBoxTowxPyVListBox},
 {0,0,0}};
 
 static PyObject *SWIG_globals;
@@ -2613,6 +4884,11 @@ SWIGEXPORT(void) initwindows3c() {
         PyDict_SetItemString(d,"wxLAYOUT_BOTTOM", PyInt_FromLong((long) wxLAYOUT_BOTTOM));
         PyDict_SetItemString(d,"wxEVT_QUERY_LAYOUT_INFO", PyInt_FromLong((long) wxEVT_QUERY_LAYOUT_INFO));
         PyDict_SetItemString(d,"wxEVT_CALCULATE_LAYOUT", PyInt_FromLong((long) wxEVT_CALCULATE_LAYOUT));
+
+    // Map renamed classes back to their common name for OOR
+    wxPyPtrTypeMap_Add("wxHtmlListBox", "wxPyHtmlListBox");
+    wxPyPtrTypeMap_Add("wxVListBox", "wxPyVListBox");
+    wxPyPtrTypeMap_Add("wxVScrolledWindow", "wxPyVScrolledWindow");
 {
    int i;
    for (i = 0; _swig_mapping[i].n1; i++)