]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/modules/ogl/oglshapes.cpp
ifdef'd out wxEmptyString. This is defined in string.cpp.
[wxWidgets.git] / utils / wxPython / modules / ogl / oglshapes.cpp
index 44c42e63a5a5e348b38bc99e207915e37879e97a..9be7d8497dae709c941ee7ec1ea7654f7dea2d8c 100644 (file)
@@ -103,21 +103,12 @@ static PyObject* t_output_helper(PyObject* target, PyObject* o) {
     return target;
 }
 
     return target;
 }
 
-
-HELPEREXPORT byte* byte_LIST_helper(PyObject* source);
-HELPEREXPORT int* int_LIST_helper(PyObject* source);
-HELPEREXPORT long* long_LIST_helper(PyObject* source);
-HELPEREXPORT char** string_LIST_helper(PyObject* source);
-HELPEREXPORT wxPoint* wxPoint_LIST_helper(PyObject* source);
-HELPEREXPORT wxBitmap** wxBitmap_LIST_helper(PyObject* source);
-HELPEREXPORT wxString* wxString_LIST_helper(PyObject* source);
-HELPEREXPORT wxAcceleratorEntry* wxAcceleratorEntry_LIST_helper(PyObject* source);
-
-
 static char* wxStringErrorMsg = "string type is required for parameter";
 
     WXSHAPE_IMP_CALLBACKS(wxPyRectangleShape, wxRectangleShape);
 
 static char* wxStringErrorMsg = "string type is required for parameter";
 
     WXSHAPE_IMP_CALLBACKS(wxPyRectangleShape, wxRectangleShape);
 
+    WXSHAPE_IMP_CALLBACKS(wxPyControlPoint, wxControlPoint);
+
     WXSHAPE_IMP_CALLBACKS(wxPyBitmapShape, wxBitmapShape);
 
     WXSHAPE_IMP_CALLBACKS(wxPyDrawnShape, wxDrawnShape);
     WXSHAPE_IMP_CALLBACKS(wxPyBitmapShape, wxBitmapShape);
 
     WXSHAPE_IMP_CALLBACKS(wxPyDrawnShape, wxDrawnShape);
@@ -934,12 +925,14 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawLine(PyObject *self, PyObject *args,
     wxPoint * _arg1;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     wxPoint * _arg1;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
-    PyObject * _argo2 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    wxPoint  temp0;
+    PyObject * _obj2 = 0;
     char *_kwnames[] = { "self","pt1","pt2", NULL };
 
     self = self;
     char *_kwnames[] = { "self","pt1","pt2", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPseudoMetaFile_DrawLine",_kwnames,&_argo0,&_argo1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPseudoMetaFile_DrawLine",_kwnames,&_argo0,&_obj1,&_obj2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -948,20 +941,16 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawLine(PyObject *self, PyObject *args,
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawLine. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPseudoMetaFile_DrawLine. Expected _wxPoint_p.");
+}
+{
+    _arg2 = &temp0;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawLine(_arg0,*_arg1,*_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawLine(_arg0,*_arg1,*_arg2);
@@ -978,11 +967,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawRectangle(PyObject *self, PyObject *
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawRectangle",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawRectangle",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -991,13 +981,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawRectangle(PyObject *self, PyObject *
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawRectangle. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawRectangle(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawRectangle(_arg0,*_arg1);
@@ -1015,11 +1003,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawRoundedRectangle(PyObject *self, PyO
     wxRect * _arg1;
     double  _arg2;
     PyObject * _argo0 = 0;
     wxRect * _arg1;
     double  _arg2;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect","radius", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect","radius", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOd:wxPseudoMetaFile_DrawRoundedRectangle",_kwnames,&_argo0,&_argo1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOd:wxPseudoMetaFile_DrawRoundedRectangle",_kwnames,&_argo0,&_obj1,&_arg2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1028,13 +1017,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawRoundedRectangle(PyObject *self, PyO
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawRoundedRectangle. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawRoundedRectangle(_arg0,*_arg1,_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawRoundedRectangle(_arg0,*_arg1,_arg2);
@@ -1053,13 +1040,16 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawArc(PyObject *self, PyObject *args,
     wxPoint * _arg2;
     wxPoint * _arg3;
     PyObject * _argo0 = 0;
     wxPoint * _arg2;
     wxPoint * _arg3;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
-    PyObject * _argo2 = 0;
-    PyObject * _argo3 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    wxPoint  temp0;
+    PyObject * _obj2 = 0;
+    wxPoint  temp1;
+    PyObject * _obj3 = 0;
     char *_kwnames[] = { "self","centrePt","startPt","endPt", NULL };
 
     self = self;
     char *_kwnames[] = { "self","centrePt","startPt","endPt", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOO:wxPseudoMetaFile_DrawArc",_kwnames,&_argo0,&_argo1,&_argo2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOO:wxPseudoMetaFile_DrawArc",_kwnames,&_argo0,&_obj1,&_obj2,&_obj3)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1068,27 +1058,21 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawArc(PyObject *self, PyObject *args,
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawArc. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPseudoMetaFile_DrawArc. Expected _wxPoint_p.");
+}
+{
+    _arg2 = &temp0;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo3) {
-        if (_argo3 == Py_None) { _arg3 = NULL; }
-        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of wxPseudoMetaFile_DrawArc. Expected _wxPoint_p.");
+}
+{
+    _arg3 = &temp1;
+    if (! wxPoint_helper(_obj3, &_arg3))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawArc(_arg0,*_arg1,*_arg2,*_arg3);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawArc(_arg0,*_arg1,*_arg2,*_arg3);
@@ -1107,11 +1091,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawEllipticArc(PyObject *self, PyObject
     double  _arg2;
     double  _arg3;
     PyObject * _argo0 = 0;
     double  _arg2;
     double  _arg3;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect","startAngle","endAngle", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect","startAngle","endAngle", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd:wxPseudoMetaFile_DrawEllipticArc",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd:wxPseudoMetaFile_DrawEllipticArc",_kwnames,&_argo0,&_obj1,&_arg2,&_arg3)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1120,13 +1105,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawEllipticArc(PyObject *self, PyObject
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawEllipticArc. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawEllipticArc(_arg0,*_arg1,_arg2,_arg3);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawEllipticArc(_arg0,*_arg1,_arg2,_arg3);
@@ -1143,11 +1126,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawEllipse(PyObject *self, PyObject *ar
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawEllipse",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawEllipse",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1156,13 +1140,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawEllipse(PyObject *self, PyObject *ar
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawEllipse. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawEllipse(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawEllipse(_arg0,*_arg1);
@@ -1179,11 +1161,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawPoint(PyObject *self, PyObject *args
     wxPseudoMetaFile * _arg0;
     wxPoint * _arg1;
     PyObject * _argo0 = 0;
     wxPseudoMetaFile * _arg0;
     wxPoint * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","pt", NULL };
 
     self = self;
     char *_kwnames[] = { "self","pt", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawPoint",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_DrawPoint",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1192,13 +1175,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawPoint(PyObject *self, PyObject *args
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_DrawPoint. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawPoint(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawPoint(_arg0,*_arg1);
@@ -1217,11 +1198,12 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawText(PyObject *self, PyObject *args,
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
-    PyObject * _argo2 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
     char *_kwnames[] = { "self","text","pt", NULL };
 
     self = self;
     char *_kwnames[] = { "self","text","pt", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPseudoMetaFile_DrawText",_kwnames,&_argo0,&_obj1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPseudoMetaFile_DrawText",_kwnames,&_argo0,&_obj1,&_obj2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1237,13 +1219,11 @@ static PyObject *_wrap_wxPseudoMetaFile_DrawText(PyObject *self, PyObject *args,
     }
     _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     }
     _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPseudoMetaFile_DrawText. Expected _wxPoint_p.");
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawText(_arg0,*_arg1,*_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_DrawText(_arg0,*_arg1,*_arg2);
@@ -1409,11 +1389,12 @@ static PyObject *_wrap_wxPseudoMetaFile_SetClippingRect(PyObject *self, PyObject
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
     wxPseudoMetaFile * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_SetClippingRect",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPseudoMetaFile_SetClippingRect",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -1422,13 +1403,11 @@ static PyObject *_wrap_wxPseudoMetaFile_SetClippingRect(PyObject *self, PyObject
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPseudoMetaFile_SetClippingRect. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_SetClippingRect(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPseudoMetaFile_SetClippingRect(_arg0,*_arg1);
@@ -2620,7 +2599,7 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnMoveLink(PyObject *self, PyObje
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -2643,8 +2622,8 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnSizingDragLeft(PyObject *self,
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -2663,7 +2642,7 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnSizingDragLeft(PyObject *self,
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -2684,8 +2663,8 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnSizingBeginDragLeft(PyObject *s
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -2703,7 +2682,7 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnSizingBeginDragLeft(PyObject *s
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
 static PyObject *_wrap_wxPyRectangleShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyRectangleShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -2724,8 +2703,8 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnSizingEndDragLeft(PyObject *sel
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyRectangleShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -2797,47 +2776,69 @@ static PyObject *_wrap_wxPyRectangleShape_base_OnEndSize(PyObject *self, PyObjec
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-static void *SwigwxPyBitmapShapeTowxPyRectangleShape(void *ptr) {
-    wxPyBitmapShape *src;
+static void *SwigwxPyControlPointTowxPyRectangleShape(void *ptr) {
+    wxPyControlPoint *src;
     wxPyRectangleShape *dest;
     wxPyRectangleShape *dest;
-    src = (wxPyBitmapShape *) ptr;
+    src = (wxPyControlPoint *) ptr;
     dest = (wxPyRectangleShape *) src;
     return (void *) dest;
 }
 
     dest = (wxPyRectangleShape *) src;
     return (void *) dest;
 }
 
-static void *SwigwxPyBitmapShapeTowxPyShape(void *ptr) {
-    wxPyBitmapShape *src;
+static void *SwigwxPyControlPointTowxPyShape(void *ptr) {
+    wxPyControlPoint *src;
     wxPyShape *dest;
     wxPyShape *dest;
-    src = (wxPyBitmapShape *) ptr;
+    src = (wxPyControlPoint *) ptr;
     dest = (wxPyShape *) src;
     return (void *) dest;
 }
 
     dest = (wxPyShape *) src;
     return (void *) dest;
 }
 
-static void *SwigwxPyBitmapShapeTowxPyShapeEvtHandler(void *ptr) {
-    wxPyBitmapShape *src;
+static void *SwigwxPyControlPointTowxPyShapeEvtHandler(void *ptr) {
+    wxPyControlPoint *src;
     wxPyShapeEvtHandler *dest;
     wxPyShapeEvtHandler *dest;
-    src = (wxPyBitmapShape *) ptr;
+    src = (wxPyControlPoint *) ptr;
     dest = (wxPyShapeEvtHandler *) src;
     return (void *) dest;
 }
 
     dest = (wxPyShapeEvtHandler *) src;
     return (void *) dest;
 }
 
-#define new_wxPyBitmapShape() (new wxPyBitmapShape())
-static PyObject *_wrap_new_wxPyBitmapShape(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define new_wxPyControlPoint(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxPyControlPoint(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxPyControlPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _result;
-    char *_kwnames[] = {  NULL };
+    wxPyControlPoint * _result;
+    wxPyShapeCanvas * _arg0 = (wxPyShapeCanvas *) NULL;
+    wxPyShape * _arg1 = (wxPyShape *) NULL;
+    double  _arg2 = (double ) 0.0;
+    double  _arg3 = (double ) 0.0;
+    double  _arg4 = (double ) 0.0;
+    int  _arg5 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "the_canvas","object","size","the_xoffset","the_yoffset","the_type", NULL };
     char _ptemp[128];
 
     self = self;
     char _ptemp[128];
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPyBitmapShape",_kwnames)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|OOdddi:new_wxPyControlPoint",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyShapeCanvas_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of new_wxPyControlPoint. Expected _wxPyShapeCanvas_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of new_wxPyControlPoint. Expected _wxPyShape_p.");
         return NULL;
         return NULL;
+        }
+    }
 {
     wxPy_BEGIN_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        _result = (wxPyBitmapShape *)new_wxPyBitmapShape();
+        _result = (wxPyControlPoint *)new_wxPyControlPoint(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
 
     wxPy_END_ALLOW_THREADS;
 }    if (_result) {
 
     wxPy_END_ALLOW_THREADS;
 }    if (_result) {
-        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyBitmapShape_p");
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyControlPoint_p");
         _resultobj = Py_BuildValue("s",_ptemp);
     } else {
         Py_INCREF(Py_None);
         _resultobj = Py_BuildValue("s",_ptemp);
     } else {
         Py_INCREF(Py_None);
@@ -2846,22 +2847,22 @@ static PyObject *_wrap_new_wxPyBitmapShape(PyObject *self, PyObject *args, PyObj
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape__setSelf(_swigobj,_swigarg0)  (_swigobj->_setSelf(_swigarg0))
-static PyObject *_wrap_wxPyBitmapShape__setSelf(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint__setSelf(_swigobj,_swigarg0)  (_swigobj->_setSelf(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint__setSelf(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
     PyObject * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","self", NULL };
 
     self = self;
     PyObject * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","self", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape__setSelf",_kwnames,&_argo0,&_obj1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint__setSelf",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape__setSelf. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint__setSelf. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -2870,7 +2871,7 @@ static PyObject *_wrap_wxPyBitmapShape__setSelf(PyObject *self, PyObject *args,
 }
 {
     wxPy_BEGIN_ALLOW_THREADS;
 }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape__setSelf(_arg0,_arg1);
+        wxPyControlPoint__setSelf(_arg0,_arg1);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
@@ -2878,102 +2879,90 @@ static PyObject *_wrap_wxPyBitmapShape__setSelf(PyObject *self, PyObject *args,
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_GetBitmap(_swigobj)  (_swigobj->GetBitmap())
-static PyObject *_wrap_wxPyBitmapShape_GetBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_SetCornerRadius(_swigobj,_swigarg0)  (_swigobj->SetCornerRadius(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_SetCornerRadius(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxBitmap * _result;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo0 = 0;
-    char *_kwnames[] = { "self", NULL };
-    char _ptemp[128];
+    char *_kwnames[] = { "self","radius", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_GetBitmap",_kwnames,&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Od:wxPyControlPoint_SetCornerRadius",_kwnames,&_argo0,&_arg1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_GetBitmap. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_SetCornerRadius. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxBitmap & _result_ref = wxPyBitmapShape_GetBitmap(_arg0);
-    _result = (wxBitmap *) &_result_ref;
+        wxPyControlPoint_SetCornerRadius(_arg0,_arg1);
 
     wxPy_END_ALLOW_THREADS;
 
     wxPy_END_ALLOW_THREADS;
-}    if (_result) {
-        SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
-        _resultobj = Py_BuildValue("s",_ptemp);
-    } else {
-        Py_INCREF(Py_None);
-        _resultobj = Py_None;
-    }
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_GetFilename(_swigobj)  (_swigobj->GetFilename())
-static PyObject *_wrap_wxPyBitmapShape_GetFilename(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnDelete(_swigobj)  (_swigobj->base_OnDelete())
+static PyObject *_wrap_wxPyControlPoint_base_OnDelete(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxString * _result;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
     PyObject * _argo0 = 0;
     char *_kwnames[] = { "self", NULL };
 
     self = self;
     PyObject * _argo0 = 0;
     char *_kwnames[] = { "self", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_GetFilename",_kwnames,&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyControlPoint_base_OnDelete",_kwnames,&_argo0)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_GetFilename. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDelete. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        _result = new wxString (wxPyBitmapShape_GetFilename(_arg0));
+        wxPyControlPoint_base_OnDelete(_arg0);
 
     wxPy_END_ALLOW_THREADS;
 
     wxPy_END_ALLOW_THREADS;
-}{
-    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
-}
-{
-    delete _result;
-}
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_SetBitmap(_swigobj,_swigarg0)  (_swigobj->SetBitmap(_swigarg0))
-static PyObject *_wrap_wxPyBitmapShape_SetBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
-    wxBitmap * _arg1;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
-    char *_kwnames[] = { "self","bitmap", NULL };
+    char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_SetBitmap",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_SetBitmap. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDraw. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxBitmap_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_SetBitmap. Expected _wxBitmap_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnDraw. Expected _wxDC_p.");
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape_SetBitmap(_arg0,*_arg1);
+        wxPyControlPoint_base_OnDraw(_arg0,*_arg1);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
@@ -2981,66 +2970,74 @@ static PyObject *_wrap_wxPyBitmapShape_SetBitmap(PyObject *self, PyObject *args,
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_SetFilename(_swigobj,_swigarg0)  (_swigobj->SetFilename(_swigarg0))
-static PyObject *_wrap_wxPyBitmapShape_SetFilename(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
-    wxString * _arg1;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo0 = 0;
-    PyObject * _obj1 = 0;
-    char *_kwnames[] = { "self","filename", NULL };
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_SetFilename",_kwnames,&_argo0,&_obj1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_SetFilename. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDrawContents. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
-{
-    if (!PyString_Check(_obj1)) {
-        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnDrawContents. Expected _wxDC_p.");
         return NULL;
         return NULL;
+        }
     }
     }
-    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
-}
 {
     wxPy_BEGIN_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape_SetFilename(_arg0,*_arg1);
+        wxPyControlPoint_base_OnDrawContents(_arg0,*_arg1);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
     _resultobj = Py_None;
-{
-    if (_obj1)
-        delete _arg1;
-}
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_base_OnDelete(_swigobj)  (_swigobj->base_OnDelete())
-static PyObject *_wrap_wxPyBitmapShape_base_OnDelete(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyControlPoint_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    bool  _arg2 = (bool ) FALSE;
     PyObject * _argo0 = 0;
     PyObject * _argo0 = 0;
-    char *_kwnames[] = { "self", NULL };
+    PyObject * _argo1 = 0;
+    int tempbool2 = (int) FALSE;
+    char *_kwnames[] = { "self","dc","erase", NULL };
 
     self = self;
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_base_OnDelete",_kwnames,&_argo0)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|i:wxPyControlPoint_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDelete. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDrawBranches. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnDrawBranches. Expected _wxDC_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
+    _arg2 = (bool ) tempbool2;
 {
     wxPy_BEGIN_ALLOW_THREADS;
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape_base_OnDelete(_arg0);
+        wxPyControlPoint_base_OnDrawBranches(_arg0,*_arg1,_arg2);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
@@ -3048,35 +3045,35 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnDelete(PyObject *self, PyObject *a
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
-static PyObject *_wrap_wxPyBitmapShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
     wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
     wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDraw. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnMoveLinks. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnDraw. Expected _wxDC_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnMoveLinks. Expected _wxDC_p.");
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape_base_OnDraw(_arg0,*_arg1);
+        wxPyControlPoint_base_OnMoveLinks(_arg0,*_arg1);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
@@ -3084,35 +3081,35 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnDraw(PyObject *self, PyObject *arg
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
-static PyObject *_wrap_wxPyBitmapShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
     wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
     wxDC * _arg1;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     char *_kwnames[] = { "self","dc", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnErase",_kwnames,&_argo0,&_argo1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
-        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDrawContents. Expected _wxPyBitmapShape_p.");
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnErase. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
         return NULL;
         }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
         else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnDrawContents. Expected _wxDC_p.");
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnErase. Expected _wxDC_p.");
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
         return NULL;
         }
     }
 {
     wxPy_BEGIN_ALLOW_THREADS;
-        wxPyBitmapShape_base_OnDrawContents(_arg0,*_arg1);
+        wxPyControlPoint_base_OnErase(_arg0,*_arg1);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
 
     wxPy_END_ALLOW_THREADS;
 }    Py_INCREF(Py_None);
@@ -3120,16 +3117,1143 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnDrawContents(PyObject *self, PyObj
     return _resultobj;
 }
 
     return _resultobj;
 }
 
-#define wxPyBitmapShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
-static PyObject *_wrap_wxPyBitmapShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
+#define wxPyControlPoint_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     PyObject * _resultobj;
-    wxPyBitmapShape * _arg0;
+    wxPyControlPoint * _arg0;
     wxDC * _arg1;
     wxDC * _arg1;
-    bool  _arg2 = (bool ) FALSE;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
     PyObject * _argo0 = 0;
     PyObject * _argo1 = 0;
-    int tempbool2 = (int) FALSE;
-    char *_kwnames[] = { "self","dc","erase", NULL };
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnEraseContents. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnEraseContents. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnEraseContents(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnHighlight. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnHighlight. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnHighlight(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnLeftClick",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnLeftClick. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnLeftDoubleClick",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnLeftDoubleClick. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnRightClick",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnRightClick. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyControlPoint_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyControlPoint_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnSize. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxPyControlPoint_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    bool  _result;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    double  _arg2;
+    double  _arg3;
+    double  _arg4;
+    double  _arg5;
+    bool  _arg6 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    int tempbool6 = (int) TRUE;
+    char *_kwnames[] = { "self","dc","x","y","old_x","old_y","display", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdddd|i:wxPyControlPoint_base_OnMovePre",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5,&tempbool6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnMovePre. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnMovePre. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+    _arg6 = (bool ) tempbool6;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (bool )wxPyControlPoint_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxPyControlPoint_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    double  _arg2;
+    double  _arg3;
+    double  _arg4;
+    double  _arg5;
+    bool  _arg6 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    int tempbool6 = (int) TRUE;
+    char *_kwnames[] = { "self","dc","x","y","old_x","old_y","display", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdddd|i:wxPyControlPoint_base_OnMovePost",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5,&tempbool6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnMovePost. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnMovePost. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+    _arg6 = (bool ) tempbool6;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxPyControlPoint_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    bool  _arg1;
+    double  _arg2;
+    double  _arg3;
+    int  _arg4 = (int ) 0;
+    int  _arg5 = (int ) 0;
+    PyObject * _argo0 = 0;
+    int tempbool1;
+    char *_kwnames[] = { "self","draw","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oidd|ii:wxPyControlPoint_base_OnDragLeft",_kwnames,&_argo0,&tempbool1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnBeginDragLeft",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnBeginDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnEndDragLeft",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnEndDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxPyControlPoint_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    bool  _arg1;
+    double  _arg2;
+    double  _arg3;
+    int  _arg4 = (int ) 0;
+    int  _arg5 = (int ) 0;
+    PyObject * _argo0 = 0;
+    int tempbool1;
+    char *_kwnames[] = { "self","draw","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oidd|ii:wxPyControlPoint_base_OnDragRight",_kwnames,&_argo0,&tempbool1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDragRight. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    _arg1 = (bool ) tempbool1;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnBeginDragRight",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnBeginDragRight. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
+static PyObject *_wrap_wxPyControlPoint_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    int  _arg3 = (int ) 0;
+    int  _arg4 = (int ) 0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd|ii:wxPyControlPoint_base_OnEndDragRight",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnEndDragRight. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxPyControlPoint_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    double  _arg2;
+    double  _arg3;
+    double  _arg4;
+    double  _arg5;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc","x","y","w","h", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdddd:wxPyControlPoint_base_OnDrawOutline",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDrawOutline. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnDrawOutline. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnDrawControlPoints. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnDrawControlPoints. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnDrawControlPoints(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
+static PyObject *_wrap_wxPyControlPoint_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyControlPoint_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnEraseControlPoints. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnEraseControlPoints. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnEraseControlPoints(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyControlPoint_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxDC * _arg1;
+    bool  _arg2 = (bool ) TRUE;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    int tempbool2 = (int) TRUE;
+    char *_kwnames[] = { "self","dc","moveControlPoints", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|i:wxPyControlPoint_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnMoveLink. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnMoveLink. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnMoveLink(_arg0,*_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_wxPyControlPoint_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxPyControlPoint * _arg1;
+    bool  _arg2;
+    double  _arg3;
+    double  _arg4;
+    int  _arg5 = (int ) 0;
+    int  _arg6 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    int tempbool2;
+    char *_kwnames[] = { "self","pt","draw","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOidd|ii:wxPyControlPoint_base_OnSizingDragLeft",_kwnames,&_argo0,&_argo1,&tempbool2,&_arg3,&_arg4,&_arg5,&_arg6)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    _arg2 = (bool ) tempbool2;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxPyControlPoint_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxPyControlPoint * _arg1;
+    double  _arg2;
+    double  _arg3;
+    int  _arg4 = (int ) 0;
+    int  _arg5 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","pt","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd|ii:wxPyControlPoint_base_OnSizingBeginDragLeft",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
+static PyObject *_wrap_wxPyControlPoint_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    wxPyControlPoint * _arg1;
+    double  _arg2;
+    double  _arg3;
+    int  _arg4 = (int ) 0;
+    int  _arg5 = (int ) 0;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","pt","x","y","keys","attachment", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd|ii:wxPyControlPoint_base_OnSizingEndDragLeft",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3,&_arg4,&_arg5)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyControlPoint_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyControlPoint_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","w","h", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyControlPoint_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnBeginSize. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnBeginSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyControlPoint_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyControlPoint_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyControlPoint * _arg0;
+    double  _arg1;
+    double  _arg2;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","w","h", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyControlPoint_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyControlPoint_base_OnEndSize. Expected _wxPyControlPoint_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyControlPoint_base_OnEndSize(_arg0,_arg1,_arg2);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+static void *SwigwxPyBitmapShapeTowxPyRectangleShape(void *ptr) {
+    wxPyBitmapShape *src;
+    wxPyRectangleShape *dest;
+    src = (wxPyBitmapShape *) ptr;
+    dest = (wxPyRectangleShape *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyBitmapShapeTowxPyShape(void *ptr) {
+    wxPyBitmapShape *src;
+    wxPyShape *dest;
+    src = (wxPyBitmapShape *) ptr;
+    dest = (wxPyShape *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxPyBitmapShapeTowxPyShapeEvtHandler(void *ptr) {
+    wxPyBitmapShape *src;
+    wxPyShapeEvtHandler *dest;
+    src = (wxPyBitmapShape *) ptr;
+    dest = (wxPyShapeEvtHandler *) src;
+    return (void *) dest;
+}
+
+#define new_wxPyBitmapShape() (new wxPyBitmapShape())
+static PyObject *_wrap_new_wxPyBitmapShape(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _result;
+    char *_kwnames[] = {  NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPyBitmapShape",_kwnames)) 
+        return NULL;
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxPyBitmapShape *)new_wxPyBitmapShape();
+
+    wxPy_END_ALLOW_THREADS;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyBitmapShape_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxPyBitmapShape__setSelf(_swigobj,_swigarg0)  (_swigobj->_setSelf(_swigarg0))
+static PyObject *_wrap_wxPyBitmapShape__setSelf(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    PyObject * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape__setSelf",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape__setSelf. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+{
+  _arg1 = _obj1;
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape__setSelf(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_GetBitmap(_swigobj)  (_swigobj->GetBitmap())
+static PyObject *_wrap_wxPyBitmapShape_GetBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxBitmap * _result;
+    wxPyBitmapShape * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_GetBitmap",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_GetBitmap. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxBitmap & _result_ref = wxPyBitmapShape_GetBitmap(_arg0);
+    _result = (wxBitmap *) &_result_ref;
+
+    wxPy_END_ALLOW_THREADS;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxBitmap_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_GetFilename(_swigobj)  (_swigobj->GetFilename())
+static PyObject *_wrap_wxPyBitmapShape_GetFilename(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxString * _result;
+    wxPyBitmapShape * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_GetFilename",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_GetFilename. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = new wxString (wxPyBitmapShape_GetFilename(_arg0));
+
+    wxPy_END_ALLOW_THREADS;
+}{
+    _resultobj = PyString_FromString(WXSTRINGCAST *(_result));
+}
+{
+    delete _result;
+}
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_SetBitmap(_swigobj,_swigarg0)  (_swigobj->SetBitmap(_swigarg0))
+static PyObject *_wrap_wxPyBitmapShape_SetBitmap(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    wxBitmap * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","bitmap", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_SetBitmap",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_SetBitmap. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxBitmap_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_SetBitmap. Expected _wxBitmap_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape_SetBitmap(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_SetFilename(_swigobj,_swigarg0)  (_swigobj->SetFilename(_swigarg0))
+static PyObject *_wrap_wxPyBitmapShape_SetFilename(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    wxString * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _obj1 = 0;
+    char *_kwnames[] = { "self","filename", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_SetFilename",_kwnames,&_argo0,&_obj1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_SetFilename. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+{
+    if (!PyString_Check(_obj1)) {
+        PyErr_SetString(PyExc_TypeError, wxStringErrorMsg);
+        return NULL;
+    }
+    _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
+}
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape_SetFilename(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+{
+    if (_obj1)
+        delete _arg1;
+}
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_base_OnDelete(_swigobj)  (_swigobj->base_OnDelete())
+static PyObject *_wrap_wxPyBitmapShape_base_OnDelete(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyBitmapShape_base_OnDelete",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDelete. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape_base_OnDelete(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
+static PyObject *_wrap_wxPyBitmapShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    wxDC * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDraw. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnDraw. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape_base_OnDraw(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
+static PyObject *_wrap_wxPyBitmapShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    wxDC * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","dc", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyBitmapShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyBitmapShape_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyBitmapShape_base_OnDrawContents. Expected _wxPyBitmapShape_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnDrawContents. Expected _wxDC_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxPyBitmapShape_base_OnDrawContents(_arg0,*_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxPyBitmapShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
+static PyObject *_wrap_wxPyBitmapShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxPyBitmapShape * _arg0;
+    wxDC * _arg1;
+    bool  _arg2 = (bool ) FALSE;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    int tempbool2 = (int) FALSE;
+    char *_kwnames[] = { "self","dc","erase", NULL };
 
     self = self;
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|i:wxPyBitmapShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
 
     self = self;
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO|i:wxPyBitmapShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
@@ -3858,7 +4982,7 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnMoveLink(PyObject *self, PyObject
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -3881,8 +5005,8 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnSizingDragLeft(PyObject *self, PyO
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -3901,7 +5025,7 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnSizingDragLeft(PyObject *self, PyO
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -3922,8 +5046,8 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnSizingBeginDragLeft(PyObject *self
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -3941,7 +5065,7 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnSizingBeginDragLeft(PyObject *self
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
 static PyObject *_wrap_wxPyBitmapShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyBitmapShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -3962,8 +5086,8 @@ static PyObject *_wrap_wxPyBitmapShape_base_OnSizingEndDragLeft(PyObject *self,
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyBitmapShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -4178,13 +5302,16 @@ static PyObject *_wrap_wxPyDrawnShape_DrawArc(PyObject *self, PyObject *args, Py
     wxPoint * _arg2;
     wxPoint * _arg3;
     PyObject * _argo0 = 0;
     wxPoint * _arg2;
     wxPoint * _arg3;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
-    PyObject * _argo2 = 0;
-    PyObject * _argo3 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    wxPoint  temp0;
+    PyObject * _obj2 = 0;
+    wxPoint  temp1;
+    PyObject * _obj3 = 0;
     char *_kwnames[] = { "self","centrePoint","startPoint","endPoint", NULL };
 
     self = self;
     char *_kwnames[] = { "self","centrePoint","startPoint","endPoint", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOO:wxPyDrawnShape_DrawArc",_kwnames,&_argo0,&_argo1,&_argo2,&_argo3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOO:wxPyDrawnShape_DrawArc",_kwnames,&_argo0,&_obj1,&_obj2,&_obj3)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4193,27 +5320,21 @@ static PyObject *_wrap_wxPyDrawnShape_DrawArc(PyObject *self, PyObject *args, Py
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawArc. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyDrawnShape_DrawArc. Expected _wxPoint_p.");
+}
+{
+    _arg2 = &temp0;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo3) {
-        if (_argo3 == Py_None) { _arg3 = NULL; }
-        else if (SWIG_GetPtrObj(_argo3,(void **) &_arg3,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 4 of wxPyDrawnShape_DrawArc. Expected _wxPoint_p.");
+}
+{
+    _arg3 = &temp1;
+    if (! wxPoint_helper(_obj3, &_arg3))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawArc(_arg0,*_arg1,*_arg2,*_arg3);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawArc(_arg0,*_arg1,*_arg2,*_arg3);
@@ -4260,11 +5381,12 @@ static PyObject *_wrap_wxPyDrawnShape_DrawEllipticArc(PyObject *self, PyObject *
     double  _arg2;
     double  _arg3;
     PyObject * _argo0 = 0;
     double  _arg2;
     double  _arg3;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect","startAngle","endAngle", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect","startAngle","endAngle", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd:wxPyDrawnShape_DrawEllipticArc",_kwnames,&_argo0,&_argo1,&_arg2,&_arg3)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOdd:wxPyDrawnShape_DrawEllipticArc",_kwnames,&_argo0,&_obj1,&_arg2,&_arg3)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4273,13 +5395,11 @@ static PyObject *_wrap_wxPyDrawnShape_DrawEllipticArc(PyObject *self, PyObject *
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawEllipticArc. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawEllipticArc(_arg0,*_arg1,_arg2,_arg3);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawEllipticArc(_arg0,*_arg1,_arg2,_arg3);
@@ -4297,12 +5417,14 @@ static PyObject *_wrap_wxPyDrawnShape_DrawLine(PyObject *self, PyObject *args, P
     wxPoint * _arg1;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     wxPoint * _arg1;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
-    PyObject * _argo2 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
+    wxPoint  temp0;
+    PyObject * _obj2 = 0;
     char *_kwnames[] = { "self","point1","point2", NULL };
 
     self = self;
     char *_kwnames[] = { "self","point1","point2", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyDrawnShape_DrawLine",_kwnames,&_argo0,&_argo1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyDrawnShape_DrawLine",_kwnames,&_argo0,&_obj1,&_obj2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4311,20 +5433,16 @@ static PyObject *_wrap_wxPyDrawnShape_DrawLine(PyObject *self, PyObject *args, P
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawLine. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyDrawnShape_DrawLine. Expected _wxPoint_p.");
+}
+{
+    _arg2 = &temp0;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawLine(_arg0,*_arg1,*_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawLine(_arg0,*_arg1,*_arg2);
@@ -4389,11 +5507,12 @@ static PyObject *_wrap_wxPyDrawnShape_DrawPoint(PyObject *self, PyObject *args,
     wxPyDrawnShape * _arg0;
     wxPoint * _arg1;
     PyObject * _argo0 = 0;
     wxPyDrawnShape * _arg0;
     wxPoint * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxPoint  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","point", NULL };
 
     self = self;
     char *_kwnames[] = { "self","point", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_DrawPoint",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_DrawPoint",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4402,13 +5521,11 @@ static PyObject *_wrap_wxPyDrawnShape_DrawPoint(PyObject *self, PyObject *args,
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawPoint. Expected _wxPoint_p.");
+{
+    _arg1 = &temp;
+    if (! wxPoint_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawPoint(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawPoint(_arg0,*_arg1);
@@ -4474,11 +5591,12 @@ static PyObject *_wrap_wxPyDrawnShape_DrawRectangle(PyObject *self, PyObject *ar
     wxPyDrawnShape * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
     wxPyDrawnShape * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_DrawRectangle",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_DrawRectangle",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4487,13 +5605,11 @@ static PyObject *_wrap_wxPyDrawnShape_DrawRectangle(PyObject *self, PyObject *ar
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawRectangle. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawRectangle(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawRectangle(_arg0,*_arg1);
@@ -4511,11 +5627,12 @@ static PyObject *_wrap_wxPyDrawnShape_DrawRoundedRectangle(PyObject *self, PyObj
     wxRect * _arg1;
     double  _arg2;
     PyObject * _argo0 = 0;
     wxRect * _arg1;
     double  _arg2;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect","radius", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect","radius", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOd:wxPyDrawnShape_DrawRoundedRectangle",_kwnames,&_argo0,&_argo1,&_arg2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOd:wxPyDrawnShape_DrawRoundedRectangle",_kwnames,&_argo0,&_obj1,&_arg2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4524,13 +5641,11 @@ static PyObject *_wrap_wxPyDrawnShape_DrawRoundedRectangle(PyObject *self, PyObj
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_DrawRoundedRectangle. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawRoundedRectangle(_arg0,*_arg1,_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawRoundedRectangle(_arg0,*_arg1,_arg2);
@@ -4597,11 +5712,12 @@ static PyObject *_wrap_wxPyDrawnShape_DrawText(PyObject *self, PyObject *args, P
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
     wxPoint * _arg2;
     PyObject * _argo0 = 0;
     PyObject * _obj1 = 0;
-    PyObject * _argo2 = 0;
+    wxPoint  temp;
+    PyObject * _obj2 = 0;
     char *_kwnames[] = { "self","text","point", NULL };
 
     self = self;
     char *_kwnames[] = { "self","text","point", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyDrawnShape_DrawText",_kwnames,&_argo0,&_obj1,&_argo2)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyDrawnShape_DrawText",_kwnames,&_argo0,&_obj1,&_obj2)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4617,13 +5733,11 @@ static PyObject *_wrap_wxPyDrawnShape_DrawText(PyObject *self, PyObject *args, P
     }
     _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
     }
     _arg1 = new wxString(PyString_AsString(_obj1), PyString_Size(_obj1));
 }
-    if (_argo2) {
-        if (_argo2 == Py_None) { _arg2 = NULL; }
-        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyDrawnShape_DrawText. Expected _wxPoint_p.");
+{
+    _arg2 = &temp;
+    if (! wxPoint_helper(_obj2, &_arg2))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawText(_arg0,*_arg1,*_arg2);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_DrawText(_arg0,*_arg1,*_arg2);
@@ -4791,11 +5905,12 @@ static PyObject *_wrap_wxPyDrawnShape_SetClippingRect(PyObject *self, PyObject *
     wxPyDrawnShape * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
     wxPyDrawnShape * _arg0;
     wxRect * _arg1;
     PyObject * _argo0 = 0;
-    PyObject * _argo1 = 0;
+    wxRect  temp;
+    PyObject * _obj1 = 0;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
     char *_kwnames[] = { "self","rect", NULL };
 
     self = self;
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_SetClippingRect",_kwnames,&_argo0,&_argo1)) 
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyDrawnShape_SetClippingRect",_kwnames,&_argo0,&_obj1)) 
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
         return NULL;
     if (_argo0) {
         if (_argo0 == Py_None) { _arg0 = NULL; }
@@ -4804,13 +5919,11 @@ static PyObject *_wrap_wxPyDrawnShape_SetClippingRect(PyObject *self, PyObject *
         return NULL;
         }
     }
         return NULL;
         }
     }
-    if (_argo1) {
-        if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxRect_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_SetClippingRect. Expected _wxRect_p.");
+{
+    _arg1 = &temp;
+    if (! wxRect_helper(_obj1, &_arg1))
         return NULL;
         return NULL;
-        }
-    }
+}
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_SetClippingRect(_arg0,*_arg1);
 {
     wxPy_BEGIN_ALLOW_THREADS;
         wxPyDrawnShape_SetClippingRect(_arg0,*_arg1);
@@ -5960,7 +7073,7 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnMoveLink(PyObject *self, PyObject *
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -5983,8 +7096,8 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnSizingDragLeft(PyObject *self, PyOb
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -6003,7 +7116,7 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnSizingDragLeft(PyObject *self, PyOb
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -6024,8 +7137,8 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnSizingBeginDragLeft(PyObject *self,
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -6043,7 +7156,7 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnSizingBeginDragLeft(PyObject *self,
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
 static PyObject *_wrap_wxPyDrawnShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDrawnShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -6064,8 +7177,8 @@ static PyObject *_wrap_wxPyDrawnShape_base_OnSizingEndDragLeft(PyObject *self, P
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDrawnShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -7677,7 +8790,7 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnMoveLink(PyObject *self, PyObje
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -7700,8 +8813,8 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnSizingDragLeft(PyObject *self,
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -7720,7 +8833,7 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnSizingDragLeft(PyObject *self,
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -7741,8 +8854,8 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnSizingBeginDragLeft(PyObject *s
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -7760,7 +8873,7 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnSizingBeginDragLeft(PyObject *s
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
 static PyObject *_wrap_wxPyCompositeShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyCompositeShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -7781,8 +8894,8 @@ static PyObject *_wrap_wxPyCompositeShape_base_OnSizingEndDragLeft(PyObject *sel
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCompositeShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -8828,7 +9941,7 @@ static PyObject *_wrap_wxPyDividedShape_base_OnMoveLink(PyObject *self, PyObject
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -8851,8 +9964,8 @@ static PyObject *_wrap_wxPyDividedShape_base_OnSizingDragLeft(PyObject *self, Py
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -8871,7 +9984,7 @@ static PyObject *_wrap_wxPyDividedShape_base_OnSizingDragLeft(PyObject *self, Py
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -8892,8 +10005,8 @@ static PyObject *_wrap_wxPyDividedShape_base_OnSizingBeginDragLeft(PyObject *sel
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -8911,7 +10024,7 @@ static PyObject *_wrap_wxPyDividedShape_base_OnSizingBeginDragLeft(PyObject *sel
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
 static PyObject *_wrap_wxPyDividedShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDividedShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -8932,8 +10045,8 @@ static PyObject *_wrap_wxPyDividedShape_base_OnSizingEndDragLeft(PyObject *self,
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDividedShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -10759,7 +11872,7 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnMoveLink(PyObject *self, PyObjec
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
     bool  _arg2;
     double  _arg3;
     double  _arg4;
@@ -10782,8 +11895,8 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnSizingDragLeft(PyObject *self, P
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -10802,7 +11915,7 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnSizingDragLeft(PyObject *self, P
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -10823,8 +11936,8 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnSizingBeginDragLeft(PyObject *se
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingBeginDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -10842,7 +11955,7 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnSizingBeginDragLeft(PyObject *se
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
 static PyObject *_wrap_wxPyDivisionShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject * _resultobj;
     wxPyDivisionShape * _arg0;
-    wxControlPoint * _arg1;
+    wxPyControlPoint * _arg1;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
     double  _arg2;
     double  _arg3;
     int  _arg4 = (int ) 0;
@@ -10863,8 +11976,8 @@ static PyObject *_wrap_wxPyDivisionShape_base_OnSizingEndDragLeft(PyObject *self
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
     }
     if (_argo1) {
         if (_argo1 == Py_None) { _arg1 = NULL; }
-        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControlPoint_p")) {
-            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingEndDragLeft. Expected _wxControlPoint_p.");
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxPyControlPoint_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyDivisionShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
         return NULL;
         }
     }
         return NULL;
         }
     }
@@ -11169,6 +12282,38 @@ static PyMethodDef oglshapescMethods[] = {
         { "wxPyBitmapShape_GetBitmap", (PyCFunction) _wrap_wxPyBitmapShape_GetBitmap, METH_VARARGS | METH_KEYWORDS },
         { "wxPyBitmapShape__setSelf", (PyCFunction) _wrap_wxPyBitmapShape__setSelf, METH_VARARGS | METH_KEYWORDS },
         { "new_wxPyBitmapShape", (PyCFunction) _wrap_new_wxPyBitmapShape, METH_VARARGS | METH_KEYWORDS },
         { "wxPyBitmapShape_GetBitmap", (PyCFunction) _wrap_wxPyBitmapShape_GetBitmap, METH_VARARGS | METH_KEYWORDS },
         { "wxPyBitmapShape__setSelf", (PyCFunction) _wrap_wxPyBitmapShape__setSelf, METH_VARARGS | METH_KEYWORDS },
         { "new_wxPyBitmapShape", (PyCFunction) _wrap_new_wxPyBitmapShape, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnEndSize", (PyCFunction) _wrap_wxPyControlPoint_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnBeginSize", (PyCFunction) _wrap_wxPyControlPoint_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnMoveLink", (PyCFunction) _wrap_wxPyControlPoint_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyControlPoint_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyControlPoint_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDrawOutline", (PyCFunction) _wrap_wxPyControlPoint_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnEndDragRight", (PyCFunction) _wrap_wxPyControlPoint_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyControlPoint_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDragRight", (PyCFunction) _wrap_wxPyControlPoint_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDragLeft", (PyCFunction) _wrap_wxPyControlPoint_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnMovePost", (PyCFunction) _wrap_wxPyControlPoint_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnMovePre", (PyCFunction) _wrap_wxPyControlPoint_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnSize", (PyCFunction) _wrap_wxPyControlPoint_base_OnSize, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnRightClick", (PyCFunction) _wrap_wxPyControlPoint_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyControlPoint_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnLeftClick", (PyCFunction) _wrap_wxPyControlPoint_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnHighlight", (PyCFunction) _wrap_wxPyControlPoint_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnEraseContents", (PyCFunction) _wrap_wxPyControlPoint_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnErase", (PyCFunction) _wrap_wxPyControlPoint_base_OnErase, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnMoveLinks", (PyCFunction) _wrap_wxPyControlPoint_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDrawBranches", (PyCFunction) _wrap_wxPyControlPoint_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDrawContents", (PyCFunction) _wrap_wxPyControlPoint_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDraw", (PyCFunction) _wrap_wxPyControlPoint_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_base_OnDelete", (PyCFunction) _wrap_wxPyControlPoint_base_OnDelete, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint_SetCornerRadius", (PyCFunction) _wrap_wxPyControlPoint_SetCornerRadius, METH_VARARGS | METH_KEYWORDS },
+        { "wxPyControlPoint__setSelf", (PyCFunction) _wrap_wxPyControlPoint__setSelf, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxPyControlPoint", (PyCFunction) _wrap_new_wxPyControlPoint, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnEndSize", (PyCFunction) _wrap_wxPyRectangleShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyRectangleShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyRectangleShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnEndSize", (PyCFunction) _wrap_wxPyRectangleShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyRectangleShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
         { "wxPyRectangleShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyRectangleShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
@@ -11259,6 +12404,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_signed_long","_long",0},
     { "_wxMenuEvent","_class_wxMenuEvent",0},
     { "_class_wxJPEGHandler","_wxJPEGHandler",0},
     { "_signed_long","_long",0},
     { "_wxMenuEvent","_class_wxMenuEvent",0},
     { "_class_wxJPEGHandler","_wxJPEGHandler",0},
+    { "_class_wxPyCommandEvent","_wxPyCommandEvent",0},
     { "_wxBMPHandler","_class_wxBMPHandler",0},
     { "_wxImage","_class_wxImage",0},
     { "_wxPrintQuality","_int",0},
     { "_wxBMPHandler","_class_wxBMPHandler",0},
     { "_wxImage","_class_wxImage",0},
     { "_wxPrintQuality","_int",0},
@@ -11273,9 +12419,11 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxRegionIterator","_wxRegionIterator",0},
     { "_class_wxMenuBar","_wxMenuBar",0},
     { "_class_wxPyTreeItemData","_wxPyTreeItemData",0},
     { "_class_wxRegionIterator","_wxRegionIterator",0},
     { "_class_wxMenuBar","_wxMenuBar",0},
     { "_class_wxPyTreeItemData","_wxPyTreeItemData",0},
+    { "_class_wxStaticBoxSizer","_wxStaticBoxSizer",0},
     { "_class_wxEvtHandler","_wxEvtHandler",0},
     { "_wxPaintEvent","_class_wxPaintEvent",0},
     { "_wxGIFHandler","_class_wxGIFHandler",0},
     { "_class_wxEvtHandler","_wxEvtHandler",0},
     { "_wxPaintEvent","_class_wxPaintEvent",0},
     { "_wxGIFHandler","_class_wxGIFHandler",0},
+    { "_wxPySizer","_class_wxPySizer",0},
     { "_wxPyCompositeShape","_class_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_wxPyCompositeShape","_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_wxPyCompositeShape","_class_wxPyCompositeShape",0},
     { "_wxPyCompositeShape","_class_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_wxPyCompositeShape","_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_wxPyCompositeShape","_class_wxPyCompositeShape",0},
@@ -11293,6 +12441,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxPyRectangleShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
+    { "_class_wxPyRectangleShape","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyRectangleShape},
+    { "_class_wxPyRectangleShape","_wxPyControlPoint",SwigwxPyControlPointTowxPyRectangleShape},
     { "_class_wxPyRectangleShape","_wxPyRectangleShape",0},
     { "_class_wxTreeCtrl","_wxTreeCtrl",0},
     { "_wxMask","_class_wxMask",0},
     { "_class_wxPyRectangleShape","_wxPyRectangleShape",0},
     { "_class_wxTreeCtrl","_wxTreeCtrl",0},
     { "_wxMask","_class_wxMask",0},
@@ -11320,11 +12470,13 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxDropFilesEvent","_class_wxDropFilesEvent",0},
     { "_wxBitmapButton","_class_wxBitmapButton",0},
     { "_wxSashWindow","_class_wxSashWindow",0},
     { "_wxDropFilesEvent","_class_wxDropFilesEvent",0},
     { "_wxBitmapButton","_class_wxBitmapButton",0},
     { "_wxSashWindow","_class_wxSashWindow",0},
+    { "_class_wxSizer","_wxSizer",0},
     { "_class_wxPrintDialogData","_wxPrintDialogData",0},
     { "_class_wxAcceleratorTable","_wxAcceleratorTable",0},
     { "_class_wxGauge","_wxGauge",0},
     { "_class_wxSashEvent","_wxSashEvent",0},
     { "_wxDC","_class_wxDC",0},
     { "_class_wxPrintDialogData","_wxPrintDialogData",0},
     { "_class_wxAcceleratorTable","_wxAcceleratorTable",0},
     { "_class_wxGauge","_wxGauge",0},
     { "_class_wxSashEvent","_wxSashEvent",0},
     { "_wxDC","_class_wxDC",0},
+    { "_wxSizerItem","_class_wxSizerItem",0},
     { "_wxListEvent","_class_wxListEvent",0},
     { "_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0},
     { "_wxProgressDialog","_class_wxProgressDialog",0},
     { "_wxListEvent","_class_wxListEvent",0},
     { "_class_wxSingleChoiceDialog","_wxSingleChoiceDialog",0},
     { "_wxProgressDialog","_class_wxProgressDialog",0},
@@ -11350,6 +12502,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxPyShapeEvtHandler","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
+    { "_class_wxPyShapeEvtHandler","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyShapeEvtHandler},
+    { "_class_wxPyShapeEvtHandler","_wxPyControlPoint",SwigwxPyControlPointTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyShapeEvtHandler",0},
     { "_class_wxPyShapeEvtHandler","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_class_wxPyShapeEvtHandler","_wxPyShapeEvtHandler",0},
@@ -11358,6 +12512,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
     { "_class_wxStatusBar","_wxStatusBar",0},
     { "_class_wxGIFHandler","_wxGIFHandler",0},
     { "_wxSysColourChangedEvent","_class_wxSysColourChangedEvent",0},
     { "_class_wxStatusBar","_wxStatusBar",0},
     { "_class_wxGIFHandler","_wxGIFHandler",0},
+    { "_class_wxPySizer","_wxPySizer",0},
     { "_class_wxPyCompositeShape","_class_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_class_wxPyCompositeShape","_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_class_wxPyCompositeShape","_wxPyCompositeShape",0},
     { "_class_wxPyCompositeShape","_class_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_class_wxPyCompositeShape","_wxPyDivisionShape",SwigwxPyDivisionShapeTowxPyCompositeShape},
     { "_class_wxPyCompositeShape","_wxPyCompositeShape",0},
@@ -11406,10 +12561,12 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxButton","_wxButton",0},
     { "_wxRadioBox","_class_wxRadioBox",0},
     { "_class_wxFontData","_wxFontData",0},
     { "_class_wxButton","_wxButton",0},
     { "_wxRadioBox","_class_wxRadioBox",0},
     { "_class_wxFontData","_wxFontData",0},
+    { "_wxBoxSizer","_class_wxBoxSizer",0},
     { "_class___wxPyCleanup","___wxPyCleanup",0},
     { "_wxBitmap","_class_wxBitmap",0},
     { "_wxTaskBarIcon","_class_wxTaskBarIcon",0},
     { "_wxPrintDialog","_class_wxPrintDialog",0},
     { "_class___wxPyCleanup","___wxPyCleanup",0},
     { "_wxBitmap","_class_wxBitmap",0},
     { "_wxTaskBarIcon","_class_wxTaskBarIcon",0},
     { "_wxPrintDialog","_class_wxPrintDialog",0},
+    { "_wxPyControlPoint","_class_wxPyControlPoint",0},
     { "_wxPyTimer","_class_wxPyTimer",0},
     { "_wxWindowDC","_class_wxWindowDC",0},
     { "_wxScrollBar","_class_wxScrollBar",0},
     { "_wxPyTimer","_class_wxPyTimer",0},
     { "_wxWindowDC","_class_wxWindowDC",0},
     { "_wxScrollBar","_class_wxScrollBar",0},
@@ -11449,6 +12606,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_unsigned_long","_long",0},
     { "_class_wxRect","_wxRect",0},
     { "_class_wxDC","_wxDC",0},
     { "_unsigned_long","_long",0},
     { "_class_wxRect","_wxRect",0},
     { "_class_wxDC","_wxDC",0},
+    { "_wxScrollWinEvent","_class_wxScrollWinEvent",0},
     { "_class_wxProgressDialog","_wxProgressDialog",0},
     { "_wxPyApp","_class_wxPyApp",0},
     { "_wxMDIParentFrame","_class_wxMDIParentFrame",0},
     { "_class_wxProgressDialog","_wxProgressDialog",0},
     { "_wxPyApp","_class_wxPyApp",0},
     { "_wxMDIParentFrame","_class_wxMDIParentFrame",0},
@@ -11501,11 +12659,13 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxRealPoint","_class_wxRealPoint",0},
     { "_class_wxRadioBox","_wxRadioBox",0},
     { "_wxGridCell","_class_wxGridCell",0},
     { "_wxRealPoint","_class_wxRealPoint",0},
     { "_class_wxRadioBox","_wxRadioBox",0},
     { "_wxGridCell","_class_wxGridCell",0},
+    { "_class_wxBoxSizer","_wxBoxSizer",0},
     { "_signed_short","_WXTYPE",0},
     { "_signed_short","_short",0},
     { "_wxMemoryDC","_class_wxMemoryDC",0},
     { "_class_wxTaskBarIcon","_wxTaskBarIcon",0},
     { "_class_wxPrintDialog","_wxPrintDialog",0},
     { "_signed_short","_WXTYPE",0},
     { "_signed_short","_short",0},
     { "_wxMemoryDC","_class_wxMemoryDC",0},
     { "_class_wxTaskBarIcon","_wxTaskBarIcon",0},
     { "_class_wxPrintDialog","_wxPrintDialog",0},
+    { "_class_wxPyControlPoint","_wxPyControlPoint",0},
     { "_wxPaintDC","_class_wxPaintDC",0},
     { "_class_wxWindowDC","_wxWindowDC",0},
     { "_class_wxFocusEvent","_wxFocusEvent",0},
     { "_wxPaintDC","_class_wxPaintDC",0},
     { "_class_wxWindowDC","_wxWindowDC",0},
     { "_class_wxFocusEvent","_wxFocusEvent",0},
@@ -11525,6 +12685,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxPyShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShape},
     { "_wxPyShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_wxPyShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_wxPyShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShape},
     { "_wxPyShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_wxPyShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
+    { "_wxPyShape","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyShape},
+    { "_wxPyShape","_wxPyControlPoint",SwigwxPyControlPointTowxPyShape},
     { "_wxPyShape","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_wxPyShape","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_wxPyShape","_class_wxPyShape",0},
     { "_wxPyShape","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_wxPyShape","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_wxPyShape","_class_wxPyShape",0},
@@ -11569,6 +12731,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxWindowID","_int",0},
     { "_wxWindowID","_signed_int",0},
     { "_wxWindowID","_unsigned_int",0},
     { "_wxWindowID","_int",0},
     { "_wxWindowID","_signed_int",0},
     { "_wxWindowID","_unsigned_int",0},
+    { "_class_wxScrollWinEvent","_wxScrollWinEvent",0},
+    { "_class_wxSizerItem","_wxSizerItem",0},
     { "_int","_wxPrintQuality",0},
     { "_int","_size_t",0},
     { "_int","_EBool",0},
     { "_int","_wxPrintQuality",0},
     { "_int","_size_t",0},
     { "_int","_EBool",0},
@@ -11577,6 +12741,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_int","_unsigned_int",0},
     { "_int","_signed_int",0},
     { "_class_wxMouseEvent","_wxMouseEvent",0},
     { "_int","_unsigned_int",0},
     { "_int","_signed_int",0},
     { "_class_wxMouseEvent","_wxMouseEvent",0},
+    { "_wxPyCommandEvent","_class_wxPyCommandEvent",0},
     { "_class_wxListEvent","_wxListEvent",0},
     { "_class_wxPrintPreview","_wxPrintPreview",0},
     { "_class_wxSpinEvent","_wxSpinEvent",0},
     { "_class_wxListEvent","_wxListEvent",0},
     { "_class_wxPrintPreview","_wxPrintPreview",0},
     { "_class_wxSpinEvent","_wxSpinEvent",0},
@@ -11587,6 +12752,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxPrinterDC","_wxPrinterDC",0},
     { "_class_wxMDIParentFrame","_wxMDIParentFrame",0},
     { "_wxPyTreeItemData","_class_wxPyTreeItemData",0},
     { "_class_wxPrinterDC","_wxPrinterDC",0},
     { "_class_wxMDIParentFrame","_wxMDIParentFrame",0},
     { "_wxPyTreeItemData","_class_wxPyTreeItemData",0},
+    { "_wxStaticBoxSizer","_class_wxStaticBoxSizer",0},
     { "_class_wxPaintDC","_wxPaintDC",0},
     { "_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0},
     { "_class_wxInitDialogEvent","_wxInitDialogEvent",0},
     { "_class_wxPaintDC","_wxPaintDC",0},
     { "_class_wxSysColourChangedEvent","_wxSysColourChangedEvent",0},
     { "_class_wxInitDialogEvent","_wxInitDialogEvent",0},
@@ -11602,6 +12768,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_class_wxPyShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShape},
     { "_class_wxPyShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShape},
     { "_class_wxPyShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShape},
+    { "_class_wxPyShape","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyShape},
+    { "_class_wxPyShape","_wxPyControlPoint",SwigwxPyControlPointTowxPyShape},
     { "_class_wxPyShape","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyShape",0},
     { "_class_wxPyShape","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShape},
     { "_class_wxPyShape","_wxPyShape",0},
@@ -11625,6 +12793,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxRegion","_class_wxRegion",0},
     { "_class_wxSplitterWindow","_wxSplitterWindow",0},
     { "_wxPreviewFrame","_class_wxPreviewFrame",0},
     { "_wxRegion","_class_wxRegion",0},
     { "_class_wxSplitterWindow","_wxSplitterWindow",0},
     { "_wxPreviewFrame","_class_wxPreviewFrame",0},
+    { "_wxSizer","_class_wxSizer",0},
     { "_class_wxShowEvent","_wxShowEvent",0},
     { "_wxActivateEvent","_class_wxActivateEvent",0},
     { "_wxGauge","_class_wxGauge",0},
     { "_class_wxShowEvent","_wxShowEvent",0},
     { "_wxActivateEvent","_class_wxActivateEvent",0},
     { "_wxGauge","_class_wxGauge",0},
@@ -11652,6 +12821,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxPyShapeEvtHandler","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyShapeEvtHandler},
+    { "_wxPyShapeEvtHandler","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyShapeEvtHandler},
+    { "_wxPyShapeEvtHandler","_wxPyControlPoint",SwigwxPyControlPointTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_class_wxPyShapeEvtHandler",0},
     { "_wxPyShapeEvtHandler","_class_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_wxPyRectangleShape",SwigwxPyRectangleShapeTowxPyShapeEvtHandler},
     { "_wxPyShapeEvtHandler","_class_wxPyShapeEvtHandler",0},
@@ -11672,6 +12843,8 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxPyRectangleShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyRectangleShape},
     { "_wxPyRectangleShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_wxPyRectangleShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_wxPyRectangleShape","_wxPyDrawnShape",SwigwxPyDrawnShapeTowxPyRectangleShape},
     { "_wxPyRectangleShape","_class_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
     { "_wxPyRectangleShape","_wxPyBitmapShape",SwigwxPyBitmapShapeTowxPyRectangleShape},
+    { "_wxPyRectangleShape","_class_wxPyControlPoint",SwigwxPyControlPointTowxPyRectangleShape},
+    { "_wxPyRectangleShape","_wxPyControlPoint",SwigwxPyControlPointTowxPyRectangleShape},
     { "_wxPyRectangleShape","_class_wxPyRectangleShape",0},
     { "_class_wxScrolledWindow","_wxScrolledWindow",0},
     { "_class_wxTextEntryDialog","_wxTextEntryDialog",0},
     { "_wxPyRectangleShape","_class_wxPyRectangleShape",0},
     { "_class_wxScrolledWindow","_wxScrolledWindow",0},
     { "_class_wxTextEntryDialog","_wxTextEntryDialog",0},