/*
 * FILE : contrib/ogl/oglshapes2.cpp
 * 
 * This file was automatically generated by :
 * Simplified Wrapper and Interface Generator (SWIG)
 * Version 1.1 (Build 883)
 * 
 * Portions Copyright (c) 1995-1998
 * The University of Utah and The Regents of the University of California.
 * Permission is granted to distribute this file in any manner provided
 * this notice remains intact.
 * 
 * Do not make changes to this file--changes will be lost!
 *
 */


#define SWIGCODE
/* Implementation : PYTHON */

#define SWIGPYTHON
#include "Python.h"

#include <string.h>
#include <stdlib.h>
/* Definitions for Windows/Unix exporting */
#if defined(__WIN32__)
#   if defined(_MSC_VER)
#	define SWIGEXPORT(a) __declspec(dllexport) a
#   else
#	if defined(__BORLANDC__)
#	    define SWIGEXPORT(a) a _export
#	else
#	    define SWIGEXPORT(a) a
#	endif
#   endif
#else
#   define SWIGEXPORT(a) a
#endif

#ifdef __cplusplus
extern "C" {
#endif
extern void SWIG_MakePtr(char *, void *, char *);
extern void SWIG_RegisterMapping(char *, char *, void *(*)(void *));
extern char *SWIG_GetPtr(char *, void **, char *);
extern char *SWIG_GetPtrObj(PyObject *, void **, char *);
extern void SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
extern PyObject *SWIG_newvarlink(void);
#ifdef __cplusplus
}
#endif
#define SWIG_init    initoglshapes2c

#define SWIG_name    "oglshapes2c"

#include "wxPython.h"
#include "oglhelpers.h"


static PyObject* t_output_helper(PyObject* target, PyObject* o) {
    PyObject*   o2;
    PyObject*   o3;

    if (!target) {
        target = o;
    } else if (target == Py_None) {
        Py_DECREF(Py_None);
        target = o;
    } else {
        if (!PyTuple_Check(target)) {
            o2 = target;
            target = PyTuple_New(1);
            PyTuple_SetItem(target, 0, o2);
        }
        o3 = PyTuple_New(1);
        PyTuple_SetItem(o3, 0, o);

        o2 = target;
        target = PySequence_Concat(o2, o3);
        Py_DECREF(o2);
        Py_DECREF(o3);
    }
    return target;
}

    // Put some wx default wxChar* values into wxStrings.
    static const wxString wxPyEmptyString(wxT(""));

    WXSHAPE_IMP_CALLBACKS(wxPyEllipseShape, wxEllipseShape);

    WXSHAPE_IMP_CALLBACKS(wxPyCircleShape, wxCircleShape);

    WXSHAPE_IMP_CALLBACKS(wxPyLineShape, wxLineShape);

    WXSHAPE_IMP_CALLBACKS(wxPyPolygonShape, wxPolygonShape);

    WXSHAPE_IMP_CALLBACKS(wxPyTextShape, wxTextShape);
#ifdef __cplusplus
extern "C" {
#endif
static void *SwigwxPyEllipseShapeTowxPyShape(void *ptr) {
    wxPyEllipseShape *src;
    wxPyShape *dest;
    src = (wxPyEllipseShape *) ptr;
    dest = (wxPyShape *) src;
    return (void *) dest;
}

static void *SwigwxPyEllipseShapeTowxPyShapeEvtHandler(void *ptr) {
    wxPyEllipseShape *src;
    wxPyShapeEvtHandler *dest;
    src = (wxPyEllipseShape *) ptr;
    dest = (wxPyShapeEvtHandler *) src;
    return (void *) dest;
}

static void *SwigwxPyEllipseShapeTowxObject(void *ptr) {
    wxPyEllipseShape *src;
    wxObject *dest;
    src = (wxPyEllipseShape *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxPyEllipseShape(_swigarg0,_swigarg1) (new wxPyEllipseShape(_swigarg0,_swigarg1))
static PyObject *_wrap_new_wxPyEllipseShape(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _result;
    double  _arg0 = (double ) 0.0;
    double  _arg1 = (double ) 0.0;
    char *_kwnames[] = { "width","height", NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|dd:new_wxPyEllipseShape",_kwnames,&_arg0,&_arg1)) 
        return NULL;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyEllipseShape *)new_wxPyEllipseShape(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyEllipseShape_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyEllipseShape__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    PyObject * _arg1;
    PyObject * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","self","_class", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyEllipseShape__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape__setCallbackInfo. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape__setCallbackInfo(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDraw. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnDraw. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDraw(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDrawContents. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnDrawContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDrawContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDrawBranches. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnDrawBranches. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDrawBranches(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnMoveLinks. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnMoveLinks. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnMoveLinks(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnErase",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnErase. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnErase. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnErase(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnEraseContents. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnEraseContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnEraseContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnHighlight. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnHighlight. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnHighlight(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnLeftClick. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnLeftDoubleClick. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnRightClick. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyEllipseShape_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnSize. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyEllipseShape_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnMovePre. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnMovePre. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyEllipseShape_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyEllipseShape_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyEllipseShape_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnMovePost. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnMovePost. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyEllipseShape_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDragLeft. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnBeginDragLeft. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnEndDragLeft. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyEllipseShape_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDragRight. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnBeginDragRight. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyEllipseShape_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnEndDragRight. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyEllipseShape_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDrawOutline. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnDrawOutline. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnDrawControlPoints. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnDrawControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnDrawControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
static PyObject *_wrap_wxPyEllipseShape_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyEllipseShape_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnEraseControlPoints. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnEraseControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnEraseControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnMoveLink. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyEllipseShape_base_OnMoveLink. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnMoveLink(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyEllipseShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnSizingDragLeft. Expected _wxPyEllipseShape_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 wxPyEllipseShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyEllipseShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnSizingBeginDragLeft. Expected _wxPyEllipseShape_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 wxPyEllipseShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyEllipseShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _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:wxPyEllipseShape_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,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnSizingEndDragLeft. Expected _wxPyEllipseShape_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 wxPyEllipseShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyEllipseShape_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnBeginSize. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnBeginSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyEllipseShape_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyEllipseShape_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyEllipseShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyEllipseShape_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyEllipseShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyEllipseShape_base_OnEndSize. Expected _wxPyEllipseShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyEllipseShape_base_OnEndSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static void *SwigwxPyCircleShapeTowxPyEllipseShape(void *ptr) {
    wxPyCircleShape *src;
    wxPyEllipseShape *dest;
    src = (wxPyCircleShape *) ptr;
    dest = (wxPyEllipseShape *) src;
    return (void *) dest;
}

static void *SwigwxPyCircleShapeTowxPyShape(void *ptr) {
    wxPyCircleShape *src;
    wxPyShape *dest;
    src = (wxPyCircleShape *) ptr;
    dest = (wxPyShape *) src;
    return (void *) dest;
}

static void *SwigwxPyCircleShapeTowxPyShapeEvtHandler(void *ptr) {
    wxPyCircleShape *src;
    wxPyShapeEvtHandler *dest;
    src = (wxPyCircleShape *) ptr;
    dest = (wxPyShapeEvtHandler *) src;
    return (void *) dest;
}

static void *SwigwxPyCircleShapeTowxObject(void *ptr) {
    wxPyCircleShape *src;
    wxObject *dest;
    src = (wxPyCircleShape *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxPyCircleShape(_swigarg0) (new wxPyCircleShape(_swigarg0))
static PyObject *_wrap_new_wxPyCircleShape(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _result;
    double  _arg0 = (double ) 0.0;
    char *_kwnames[] = { "width", NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|d:new_wxPyCircleShape",_kwnames,&_arg0)) 
        return NULL;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyCircleShape *)new_wxPyCircleShape(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyCircleShape_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyCircleShape__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    PyObject * _arg1;
    PyObject * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","self","_class", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyCircleShape__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape__setCallbackInfo. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape__setCallbackInfo(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDraw. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnDraw. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDraw(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDrawContents. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnDrawContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDrawContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDrawBranches. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnDrawBranches. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDrawBranches(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnMoveLinks. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnMoveLinks. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnMoveLinks(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnErase",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnErase. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnErase. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnErase(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnEraseContents. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnEraseContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnEraseContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnHighlight. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnHighlight. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnHighlight(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnLeftClick. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnLeftDoubleClick. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnRightClick. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyCircleShape_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnSize. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyCircleShape_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnMovePre. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnMovePre. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyCircleShape_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyCircleShape_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyCircleShape_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnMovePost. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnMovePost. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyCircleShape_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDragLeft. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnBeginDragLeft. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnEndDragLeft. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyCircleShape_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDragRight. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnBeginDragRight. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyCircleShape_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnEndDragRight. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyCircleShape_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDrawOutline. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnDrawOutline. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnDrawControlPoints. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnDrawControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnDrawControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
static PyObject *_wrap_wxPyCircleShape_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyCircleShape_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnEraseControlPoints. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnEraseControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnEraseControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnMoveLink. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyCircleShape_base_OnMoveLink. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnMoveLink(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyCircleShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnSizingDragLeft. Expected _wxPyCircleShape_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 wxPyCircleShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyCircleShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnSizingBeginDragLeft. Expected _wxPyCircleShape_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 wxPyCircleShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyCircleShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _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:wxPyCircleShape_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,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnSizingEndDragLeft. Expected _wxPyCircleShape_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 wxPyCircleShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyCircleShape_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnBeginSize. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnBeginSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyCircleShape_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyCircleShape_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyCircleShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyCircleShape_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyCircleShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyCircleShape_base_OnEndSize. Expected _wxPyCircleShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyCircleShape_base_OnEndSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static void *SwigwxArrowHeadTowxObject(void *ptr) {
    wxArrowHead *src;
    wxObject *dest;
    src = (wxArrowHead *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxArrowHead(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6) (new wxArrowHead(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6))
static PyObject *_wrap_new_wxArrowHead(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _result;
    int  _arg0 = (int ) 0;
    int  _arg1 = (int ) 0;
    double  _arg2 = (double ) 0.0;
    double  _arg3 = (double ) 0.0;
    wxString * _arg4 = (wxString *) &wxPyEmptyString;
    wxPseudoMetaFile * _arg5 = (wxPseudoMetaFile *) NULL;
    long  _arg6 = (long ) -1;
    PyObject * _obj4 = 0;
    PyObject * _argo5 = 0;
    char *_kwnames[] = { "type","end","size","dist","name","mf","arrowId", NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|iiddOOl:new_wxArrowHead",_kwnames,&_arg0,&_arg1,&_arg2,&_arg3,&_obj4,&_argo5,&_arg6)) 
        return NULL;
    if (_obj4)
{
    _arg4 = wxString_in_helper(_obj4);
    if (_arg4 == NULL)
        return NULL;
}
    if (_argo5) {
        if (_argo5 == Py_None) { _arg5 = NULL; }
        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,"_wxPseudoMetaFile_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of new_wxArrowHead. Expected _wxPseudoMetaFile_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxArrowHead *)new_wxArrowHead(_arg0,_arg1,_arg2,_arg3,*_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxArrowHead_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
{
    if (_obj4)
        delete _arg4;
}
    return _resultobj;
}

#define delete_wxArrowHead(_swigobj) (delete _swigobj)
static PyObject *_wrap_delete_wxArrowHead(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:delete_wxArrowHead",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of delete_wxArrowHead. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    delete_wxArrowHead(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxArrowHead__GetType(_swigobj)  (_swigobj->_GetType())
static PyObject *_wrap_wxArrowHead__GetType(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead__GetType",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead__GetType. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxArrowHead__GetType(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxArrowHead_GetPosition(_swigobj)  (_swigobj->GetPosition())
static PyObject *_wrap_wxArrowHead_GetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetPosition",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetPosition. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxArrowHead_GetPosition(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxArrowHead_SetPosition(_swigobj,_swigarg0)  (_swigobj->SetPosition(_swigarg0))
static PyObject *_wrap_wxArrowHead_SetPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    int  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","pos", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxArrowHead_SetPosition",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_SetPosition. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxArrowHead_SetPosition(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxArrowHead_GetXOffset(_swigobj)  (_swigobj->GetXOffset())
static PyObject *_wrap_wxArrowHead_GetXOffset(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetXOffset",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetXOffset. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxArrowHead_GetXOffset(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxArrowHead_GetYOffset(_swigobj)  (_swigobj->GetYOffset())
static PyObject *_wrap_wxArrowHead_GetYOffset(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetYOffset",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetYOffset. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxArrowHead_GetYOffset(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxArrowHead_GetSpacing(_swigobj)  (_swigobj->GetSpacing())
static PyObject *_wrap_wxArrowHead_GetSpacing(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetSpacing",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetSpacing. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxArrowHead_GetSpacing(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxArrowHead_GetSize(_swigobj)  (_swigobj->GetSize())
static PyObject *_wrap_wxArrowHead_GetSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetSize",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetSize. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxArrowHead_GetSize(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxArrowHead_GetName(_swigobj)  (_swigobj->GetName())
static PyObject *_wrap_wxArrowHead_GetName(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxString * _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetName",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetName. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = new wxString (wxArrowHead_GetName(_arg0));

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{
#if wxUSE_UNICODE
    _resultobj = PyUnicode_FromWideChar(_result->c_str(), _result->Len());
#else
    _resultobj = PyString_FromStringAndSize(_result->c_str(), _result->Len());
#endif
}
{
    delete _result;
}
    return _resultobj;
}

#define wxArrowHead_SetXOffset(_swigobj,_swigarg0)  (_swigobj->SetXOffset(_swigarg0))
static PyObject *_wrap_wxArrowHead_SetXOffset(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    double  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Od:wxArrowHead_SetXOffset",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_SetXOffset. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxArrowHead_SetXOffset(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxArrowHead_SetYOffset(_swigobj,_swigarg0)  (_swigobj->SetYOffset(_swigarg0))
static PyObject *_wrap_wxArrowHead_SetYOffset(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    double  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Od:wxArrowHead_SetYOffset",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_SetYOffset. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxArrowHead_SetYOffset(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxArrowHead_GetMetaFile(_swigobj)  (_swigobj->GetMetaFile())
static PyObject *_wrap_wxArrowHead_GetMetaFile(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPseudoMetaFile * _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetMetaFile",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetMetaFile. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPseudoMetaFile *)wxArrowHead_GetMetaFile(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{ _resultobj = wxPyMake_wxObject(_result); }
    return _resultobj;
}

#define wxArrowHead_GetId(_swigobj)  (_swigobj->GetId())
static PyObject *_wrap_wxArrowHead_GetId(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    long  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetId",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetId. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (long )wxArrowHead_GetId(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("l",_result);
    return _resultobj;
}

#define wxArrowHead_GetArrowEnd(_swigobj)  (_swigobj->GetArrowEnd())
static PyObject *_wrap_wxArrowHead_GetArrowEnd(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetArrowEnd",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetArrowEnd. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxArrowHead_GetArrowEnd(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxArrowHead_GetArrowSize(_swigobj)  (_swigobj->GetArrowSize())
static PyObject *_wrap_wxArrowHead_GetArrowSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxArrowHead * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxArrowHead_GetArrowSize",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_GetArrowSize. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxArrowHead_GetArrowSize(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxArrowHead_SetSize(_swigobj,_swigarg0)  (_swigobj->SetSize(_swigarg0))
static PyObject *_wrap_wxArrowHead_SetSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    double  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","size", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Od:wxArrowHead_SetSize",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_SetSize. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxArrowHead_SetSize(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxArrowHead_SetSpacing(_swigobj,_swigarg0)  (_swigobj->SetSpacing(_swigarg0))
static PyObject *_wrap_wxArrowHead_SetSpacing(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _arg0;
    double  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","sp", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Od:wxArrowHead_SetSpacing",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxArrowHead_SetSpacing. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxArrowHead_SetSpacing(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static void *SwigwxPyLineShapeTowxPyShape(void *ptr) {
    wxPyLineShape *src;
    wxPyShape *dest;
    src = (wxPyLineShape *) ptr;
    dest = (wxPyShape *) src;
    return (void *) dest;
}

static void *SwigwxPyLineShapeTowxPyShapeEvtHandler(void *ptr) {
    wxPyLineShape *src;
    wxPyShapeEvtHandler *dest;
    src = (wxPyLineShape *) ptr;
    dest = (wxPyShapeEvtHandler *) src;
    return (void *) dest;
}

static void *SwigwxPyLineShapeTowxObject(void *ptr) {
    wxPyLineShape *src;
    wxObject *dest;
    src = (wxPyLineShape *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxPyLineShape() (new wxPyLineShape())
static PyObject *_wrap_new_wxPyLineShape(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _result;
    char *_kwnames[] = {  NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPyLineShape",_kwnames)) 
        return NULL;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyLineShape *)new_wxPyLineShape();

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyLineShape_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyLineShape__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    PyObject * _arg1;
    PyObject * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","self","_class", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyLineShape__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape__setCallbackInfo. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape__setCallbackInfo(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_AddArrow(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6)  (_swigobj->AddArrow(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5,_swigarg6))
static PyObject *_wrap_wxPyLineShape_AddArrow(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    int  _arg2 = (int ) ARROW_POSITION_END;
    double  _arg3 = (double ) 10.0;
    double  _arg4 = (double ) 0.0;
    wxString * _arg5 = (wxString *) &wxPyEmptyString;
    wxPseudoMetaFile * _arg6 = (wxPseudoMetaFile *) NULL;
    long  _arg7 = (long ) -1;
    PyObject * _argo0 = 0;
    PyObject * _obj5 = 0;
    PyObject * _argo6 = 0;
    char *_kwnames[] = { "self","type","end","arrowSize","xOffset","name","mf","arrowId", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi|iddOOl:wxPyLineShape_AddArrow",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4,&_obj5,&_argo6,&_arg7)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_AddArrow. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_obj5)
{
    _arg5 = wxString_in_helper(_obj5);
    if (_arg5 == NULL)
        return NULL;
}
    if (_argo6) {
        if (_argo6 == Py_None) { _arg6 = NULL; }
        else if (SWIG_GetPtrObj(_argo6,(void **) &_arg6,"_wxPseudoMetaFile_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 7 of wxPyLineShape_AddArrow. Expected _wxPseudoMetaFile_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_AddArrow(_arg0,_arg1,_arg2,_arg3,_arg4,*_arg5,_arg6,_arg7);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
{
    if (_obj5)
        delete _arg5;
}
    return _resultobj;
}

static void  wxPyLineShape_AddArrowOrdered(wxPyLineShape *self,wxArrowHead * arrow,PyObject * referenceList,int  end) {
            wxList* list = wxPy_wxListHelper(referenceList, "_wxArrowHead_p");
            self->AddArrowOrdered(arrow, *list, end);
            delete list;
        }
static PyObject *_wrap_wxPyLineShape_AddArrowOrdered(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxArrowHead * _arg1;
    PyObject * _arg2;
    int  _arg3;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","arrow","referenceList","end", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOi:wxPyLineShape_AddArrowOrdered",_kwnames,&_argo0,&_argo1,&_obj2,&_arg3)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_AddArrowOrdered. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (_argo1 == Py_None) { _arg1 = NULL; }
        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_AddArrowOrdered. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_AddArrowOrdered(_arg0,_arg1,_arg2,_arg3);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_ClearArrow(_swigobj,_swigarg0)  (_swigobj->ClearArrow(_swigarg0))
static PyObject *_wrap_wxPyLineShape_ClearArrow(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    wxString * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    char *_kwnames[] = { "self","name", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_ClearArrow",_kwnames,&_argo0,&_obj1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_ClearArrow. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    _arg1 = wxString_in_helper(_obj1);
    if (_arg1 == NULL)
        return NULL;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_ClearArrow(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
{
    if (_obj1)
        delete _arg1;
}
    return _resultobj;
}

#define wxPyLineShape_ClearArrowsAtPosition(_swigobj,_swigarg0)  (_swigobj->ClearArrowsAtPosition(_swigarg0))
static PyObject *_wrap_wxPyLineShape_ClearArrowsAtPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1 = (int ) -1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","position", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxPyLineShape_ClearArrowsAtPosition",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_ClearArrowsAtPosition. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_ClearArrowsAtPosition(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_DrawArrow(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->DrawArrow(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_DrawArrow(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    wxArrowHead * _arg2;
    double  _arg3;
    bool  _arg4;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    PyObject * _argo2 = 0;
    int tempbool4;
    char *_kwnames[] = { "self","dc","arrow","xOffset","proportionalOffset", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOdi:wxPyLineShape_DrawArrow",_kwnames,&_argo0,&_argo1,&_argo2,&_arg3,&tempbool4)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DrawArrow. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_DrawArrow. Expected _wxDC_p.");
        return NULL;
        }
    }
    if (_argo2) {
        if (_argo2 == Py_None) { _arg2 = NULL; }
        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxArrowHead_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyLineShape_DrawArrow. Expected _wxArrowHead_p.");
        return NULL;
        }
    }
    _arg4 = (bool ) tempbool4;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_DrawArrow(_arg0,*_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_DeleteArrowHeadId(_swigobj,_swigarg0)  (_swigobj->DeleteArrowHead(_swigarg0))
static PyObject *_wrap_wxPyLineShape_DeleteArrowHeadId(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    long  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","arrowId", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Ol:wxPyLineShape_DeleteArrowHeadId",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DeleteArrowHeadId. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_DeleteArrowHeadId(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_DeleteArrowHead(_swigobj,_swigarg0,_swigarg1)  (_swigobj->DeleteArrowHead(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_DeleteArrowHead(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    int  _arg1;
    wxString * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","position","name", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OiO:wxPyLineShape_DeleteArrowHead",_kwnames,&_argo0,&_arg1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DeleteArrowHead. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    _arg2 = wxString_in_helper(_obj2);
    if (_arg2 == NULL)
        return NULL;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_DeleteArrowHead(_arg0,_arg1,*_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
{
    if (_obj2)
        delete _arg2;
}
    return _resultobj;
}

#define wxPyLineShape_DeleteLineControlPoint(_swigobj)  (_swigobj->DeleteLineControlPoint())
static PyObject *_wrap_wxPyLineShape_DeleteLineControlPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_DeleteLineControlPoint",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DeleteLineControlPoint. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_DeleteLineControlPoint(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_DrawArrows(_swigobj,_swigarg0)  (_swigobj->DrawArrows(_swigarg0))
static PyObject *_wrap_wxPyLineShape_DrawArrows(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_DrawArrows",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DrawArrows. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_DrawArrows. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_DrawArrows(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_DrawRegion(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->DrawRegion(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_DrawRegion(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    wxShapeRegion * _arg2;
    double  _arg3;
    double  _arg4;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    PyObject * _argo2 = 0;
    char *_kwnames[] = { "self","dc","region","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOdd:wxPyLineShape_DrawRegion",_kwnames,&_argo0,&_argo1,&_argo2,&_arg3,&_arg4)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_DrawRegion. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_DrawRegion. Expected _wxDC_p.");
        return NULL;
        }
    }
    if (_argo2) {
        if (_argo2 == Py_None) { _arg2 = NULL; }
        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxShapeRegion_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyLineShape_DrawRegion. Expected _wxShapeRegion_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_DrawRegion(_arg0,*_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_EraseRegion(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->EraseRegion(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_EraseRegion(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    wxShapeRegion * _arg2;
    double  _arg3;
    double  _arg4;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    PyObject * _argo2 = 0;
    char *_kwnames[] = { "self","dc","region","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOOdd:wxPyLineShape_EraseRegion",_kwnames,&_argo0,&_argo1,&_argo2,&_arg3,&_arg4)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_EraseRegion. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_EraseRegion. Expected _wxDC_p.");
        return NULL;
        }
    }
    if (_argo2) {
        if (_argo2 == Py_None) { _arg2 = NULL; }
        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxShapeRegion_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of wxPyLineShape_EraseRegion. Expected _wxShapeRegion_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_EraseRegion(_arg0,*_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_FindArrowHeadId(_swigobj,_swigarg0)  (_swigobj->FindArrowHead(_swigarg0))
static PyObject *_wrap_wxPyLineShape_FindArrowHeadId(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _result;
    wxPyLineShape * _arg0;
    long  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","arrowId", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Ol:wxPyLineShape_FindArrowHeadId",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindArrowHeadId. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxArrowHead *)wxPyLineShape_FindArrowHeadId(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{ _resultobj = wxPyMake_wxObject(_result); }
    return _resultobj;
}

#define wxPyLineShape_FindArrowHead(_swigobj,_swigarg0,_swigarg1)  (_swigobj->FindArrowHead(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_FindArrowHead(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxArrowHead * _result;
    wxPyLineShape * _arg0;
    int  _arg1;
    wxString * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","position","name", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OiO:wxPyLineShape_FindArrowHead",_kwnames,&_argo0,&_arg1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindArrowHead. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    _arg2 = wxString_in_helper(_obj2);
    if (_arg2 == NULL)
        return NULL;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxArrowHead *)wxPyLineShape_FindArrowHead(_arg0,_arg1,*_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{ _resultobj = wxPyMake_wxObject(_result); }
{
    if (_obj2)
        delete _arg2;
}
    return _resultobj;
}

#define wxPyLineShape_FindLineEndPoints(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->FindLineEndPoints(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_FindLineEndPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double * _arg1;
    double  temp;
    double * _arg2;
    double  temp0;
    double * _arg3;
    double  temp1;
    double * _arg4;
    double  temp2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
{
  _arg1 = &temp;
}
{
  _arg2 = &temp0;
}
{
  _arg3 = &temp1;
}
{
  _arg4 = &temp2;
}
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_FindLineEndPoints",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindLineEndPoints. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_FindLineEndPoints(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg1));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg2));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg3));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg4));
    _resultobj = t_output_helper(_resultobj, o);
}
    return _resultobj;
}

#define wxPyLineShape_FindLinePosition(_swigobj,_swigarg0,_swigarg1)  (_swigobj->FindLinePosition(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_FindLinePosition(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxPyLineShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyLineShape_FindLinePosition",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindLinePosition. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxPyLineShape_FindLinePosition(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_FindMinimumWidth(_swigobj)  (_swigobj->FindMinimumWidth())
static PyObject *_wrap_wxPyLineShape_FindMinimumWidth(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    double  _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_FindMinimumWidth",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindMinimumWidth. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (double )wxPyLineShape_FindMinimumWidth(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("d",_result);
    return _resultobj;
}

#define wxPyLineShape_FindNth(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->FindNth(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_FindNth(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxPyShape * _arg1;
    int * _arg2;
    int  temp;
    int * _arg3;
    int  temp0;
    bool  _arg4;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    int tempbool4;
    char *_kwnames[] = { "self","image","incoming", NULL };

    self = self;
{
  _arg2 = &temp;
}
{
  _arg3 = &temp0;
}
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOi:wxPyLineShape_FindNth",_kwnames,&_argo0,&_argo1,&tempbool4)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_FindNth. Expected _wxPyLineShape_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 wxPyLineShape_FindNth. Expected _wxPyShape_p.");
        return NULL;
        }
    }
    _arg4 = (bool ) tempbool4;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_FindNth(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
{
    PyObject *o;
    o = PyInt_FromLong((long) (*_arg2));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyInt_FromLong((long) (*_arg3));
    _resultobj = t_output_helper(_resultobj, o);
}
    return _resultobj;
}

#define wxPyLineShape_GetAttachmentFrom(_swigobj)  (_swigobj->GetAttachmentFrom())
static PyObject *_wrap_wxPyLineShape_GetAttachmentFrom(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetAttachmentFrom",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetAttachmentFrom. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxPyLineShape_GetAttachmentFrom(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_GetAttachmentTo(_swigobj)  (_swigobj->GetAttachmentTo())
static PyObject *_wrap_wxPyLineShape_GetAttachmentTo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    int  _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetAttachmentTo",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetAttachmentTo. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (int )wxPyLineShape_GetAttachmentTo(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_GetEnds(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->GetEnds(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_GetEnds(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double * _arg1;
    double  temp;
    double * _arg2;
    double  temp0;
    double * _arg3;
    double  temp1;
    double * _arg4;
    double  temp2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
{
  _arg1 = &temp;
}
{
  _arg2 = &temp0;
}
{
  _arg3 = &temp1;
}
{
  _arg4 = &temp2;
}
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetEnds",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetEnds. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_GetEnds(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg1));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg2));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg3));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg4));
    _resultobj = t_output_helper(_resultobj, o);
}
    return _resultobj;
}

#define wxPyLineShape_GetFrom(_swigobj)  (_swigobj->GetFrom())
static PyObject *_wrap_wxPyLineShape_GetFrom(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyShape * _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetFrom",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetFrom. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyShape *)wxPyLineShape_GetFrom(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{ _resultobj = wxPyMake_wxShapeEvtHandler(_result); }
    return _resultobj;
}

#define wxPyLineShape_GetLabelPosition(_swigobj,_swigarg0,_swigarg1,_swigarg2)  (_swigobj->GetLabelPosition(_swigarg0,_swigarg1,_swigarg2))
static PyObject *_wrap_wxPyLineShape_GetLabelPosition(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    double * _arg2;
    double  temp;
    double * _arg3;
    double  temp0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","position", NULL };

    self = self;
{
  _arg2 = &temp;
}
{
  _arg3 = &temp0;
}
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_GetLabelPosition",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetLabelPosition. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_GetLabelPosition(_arg0,_arg1,_arg2,_arg3);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg2));
    _resultobj = t_output_helper(_resultobj, o);
}
{
    PyObject *o;
    o = PyFloat_FromDouble((double) (*_arg3));
    _resultobj = t_output_helper(_resultobj, o);
}
    return _resultobj;
}

#define wxPyLineShape_GetNextControlPoint(_swigobj,_swigarg0)  (_swigobj->GetNextControlPoint(_swigarg0))
static PyObject *_wrap_wxPyLineShape_GetNextControlPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxRealPoint * _result;
    wxPyLineShape * _arg0;
    wxPyShape * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","shape", NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_GetNextControlPoint",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetNextControlPoint. Expected _wxPyLineShape_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 wxPyLineShape_GetNextControlPoint. Expected _wxPyShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxRealPoint *)wxPyLineShape_GetNextControlPoint(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxRealPoint_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyLineShape_GetTo(_swigobj)  (_swigobj->GetTo())
static PyObject *_wrap_wxPyLineShape_GetTo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyShape * _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetTo",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetTo. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyShape *)wxPyLineShape_GetTo(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{ _resultobj = wxPyMake_wxShapeEvtHandler(_result); }
    return _resultobj;
}

#define wxPyLineShape_Initialise(_swigobj)  (_swigobj->Initialise())
static PyObject *_wrap_wxPyLineShape_Initialise(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_Initialise",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_Initialise. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_Initialise(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_InsertLineControlPoint(_swigobj,_swigarg0)  (_swigobj->InsertLineControlPoint(_swigarg0))
static PyObject *_wrap_wxPyLineShape_InsertLineControlPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_InsertLineControlPoint",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_InsertLineControlPoint. Expected _wxPyLineShape_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 wxPyLineShape_InsertLineControlPoint. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_InsertLineControlPoint(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_IsEnd(_swigobj,_swigarg0)  (_swigobj->IsEnd(_swigarg0))
static PyObject *_wrap_wxPyLineShape_IsEnd(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    wxPyShape * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","shape", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_IsEnd",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_IsEnd. Expected _wxPyLineShape_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 wxPyLineShape_IsEnd. Expected _wxPyShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_IsEnd(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_IsSpline(_swigobj)  (_swigobj->IsSpline())
static PyObject *_wrap_wxPyLineShape_IsSpline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_IsSpline",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_IsSpline. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_IsSpline(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_MakeLineControlPoints(_swigobj,_swigarg0)  (_swigobj->MakeLineControlPoints(_swigarg0))
static PyObject *_wrap_wxPyLineShape_MakeLineControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","n", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_MakeLineControlPoints",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_MakeLineControlPoints. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_MakeLineControlPoints(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static PyObject * wxPyLineShape_GetLineControlPoints(wxPyLineShape *self) {
            wxList* list = self->GetLineControlPoints();
            return wxPy_ConvertShapeList(list, "wxPyControlPoint");
        }
static PyObject *_wrap_wxPyLineShape_GetLineControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    PyObject * _result;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_GetLineControlPoints",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_GetLineControlPoints. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (PyObject *)wxPyLineShape_GetLineControlPoints(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{
  _resultobj = _result;
}
    return _resultobj;
}

#define wxPyLineShape_SetAttachmentFrom(_swigobj,_swigarg0)  (_swigobj->SetAttachmentFrom(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetAttachmentFrom(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","fromAttach", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_SetAttachmentFrom",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetAttachmentFrom. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetAttachmentFrom(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetAttachments(_swigobj,_swigarg0,_swigarg1)  (_swigobj->SetAttachments(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_SetAttachments(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    int  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","fromAttach","toAttach", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oii:wxPyLineShape_SetAttachments",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetAttachments. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetAttachments(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetAttachmentTo(_swigobj,_swigarg0)  (_swigobj->SetAttachmentTo(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetAttachmentTo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    int  _arg1;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","toAttach", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_SetAttachmentTo",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetAttachmentTo. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetAttachmentTo(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetEnds(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->SetEnds(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_SetEnds(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double  _arg1;
    double  _arg2;
    double  _arg3;
    double  _arg4;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x1","y1","x2","y2", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odddd:wxPyLineShape_SetEnds",_kwnames,&_argo0,&_arg1,&_arg2,&_arg3,&_arg4)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetEnds. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetEnds(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetFrom(_swigobj,_swigarg0)  (_swigobj->SetFrom(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetFrom(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxPyShape * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","object", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_SetFrom",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetFrom. Expected _wxPyLineShape_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 wxPyLineShape_SetFrom. Expected _wxPyShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetFrom(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetIgnoreOffsets(_swigobj,_swigarg0)  (_swigobj->SetIgnoreOffsets(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetIgnoreOffsets(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    bool  _arg1;
    PyObject * _argo0 = 0;
    int tempbool1;
    char *_kwnames[] = { "self","ignore", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_SetIgnoreOffsets",_kwnames,&_argo0,&tempbool1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetIgnoreOffsets. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetIgnoreOffsets(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetSpline(_swigobj,_swigarg0)  (_swigobj->SetSpline(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetSpline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    bool  _arg1;
    PyObject * _argo0 = 0;
    int tempbool1;
    char *_kwnames[] = { "self","spline", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxPyLineShape_SetSpline",_kwnames,&_argo0,&tempbool1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetSpline. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetSpline(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_SetTo(_swigobj,_swigarg0)  (_swigobj->SetTo(_swigarg0))
static PyObject *_wrap_wxPyLineShape_SetTo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxPyShape * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","object", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_SetTo",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_SetTo. Expected _wxPyLineShape_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 wxPyLineShape_SetTo. Expected _wxPyShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_SetTo(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_Straighten(_swigobj,_swigarg0)  (_swigobj->Straighten(_swigarg0))
static PyObject *_wrap_wxPyLineShape_Straighten(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1 = (wxDC *) NULL;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|O:wxPyLineShape_Straighten",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_Straighten. Expected _wxPyLineShape_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 wxPyLineShape_Straighten. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_Straighten(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_Unlink(_swigobj)  (_swigobj->Unlink())
static PyObject *_wrap_wxPyLineShape_Unlink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyLineShape_Unlink",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_Unlink. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_Unlink(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDraw. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnDraw. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDraw(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDrawContents. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnDrawContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDrawContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDrawBranches. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnDrawBranches. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDrawBranches(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnMoveLinks. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnMoveLinks. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnMoveLinks(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnErase",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnErase. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnErase. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnErase(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnEraseContents. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnEraseContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnEraseContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnHighlight. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnHighlight. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnHighlight(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnLeftClick. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnLeftDoubleClick. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnRightClick. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyLineShape_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnSize. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyLineShape_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnMovePre. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnMovePre. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyLineShape_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyLineShape_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyLineShape_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnMovePost. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnMovePost. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyLineShape_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDragLeft. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnBeginDragLeft. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnEndDragLeft. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyLineShape_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDragRight. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnBeginDragRight. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyLineShape_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnEndDragRight. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyLineShape_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDrawOutline. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnDrawOutline. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnDrawControlPoints. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnDrawControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnDrawControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
static PyObject *_wrap_wxPyLineShape_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyLineShape_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnEraseControlPoints. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnEraseControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnEraseControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnMoveLink. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyLineShape_base_OnMoveLink. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnMoveLink(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyLineShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnSizingDragLeft. Expected _wxPyLineShape_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 wxPyLineShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyLineShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnSizingBeginDragLeft. Expected _wxPyLineShape_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 wxPyLineShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyLineShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _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:wxPyLineShape_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,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnSizingEndDragLeft. Expected _wxPyLineShape_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 wxPyLineShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyLineShape_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnBeginSize. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnBeginSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyLineShape_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyLineShape_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyLineShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyLineShape_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyLineShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyLineShape_base_OnEndSize. Expected _wxPyLineShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyLineShape_base_OnEndSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static void *SwigwxPyPolygonShapeTowxPyShape(void *ptr) {
    wxPyPolygonShape *src;
    wxPyShape *dest;
    src = (wxPyPolygonShape *) ptr;
    dest = (wxPyShape *) src;
    return (void *) dest;
}

static void *SwigwxPyPolygonShapeTowxPyShapeEvtHandler(void *ptr) {
    wxPyPolygonShape *src;
    wxPyShapeEvtHandler *dest;
    src = (wxPyPolygonShape *) ptr;
    dest = (wxPyShapeEvtHandler *) src;
    return (void *) dest;
}

static void *SwigwxPyPolygonShapeTowxObject(void *ptr) {
    wxPyPolygonShape *src;
    wxObject *dest;
    src = (wxPyPolygonShape *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxPyPolygonShape() (new wxPyPolygonShape())
static PyObject *_wrap_new_wxPyPolygonShape(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _result;
    char *_kwnames[] = {  NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,":new_wxPyPolygonShape",_kwnames)) 
        return NULL;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyPolygonShape *)new_wxPyPolygonShape();

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyPolygonShape_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyPolygonShape__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    PyObject * _arg1;
    PyObject * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","self","_class", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyPolygonShape__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape__setCallbackInfo. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape__setCallbackInfo(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static PyObject * wxPyPolygonShape_Create(wxPyPolygonShape *self,PyObject * points) {
            wxList* list = wxPy_wxRealPoint_ListHelper(points);
            if (list) {
                self->Create(list);
                Py_INCREF(Py_None);
                return Py_None;
            }
            else return NULL;
        }
static PyObject *_wrap_wxPyPolygonShape_Create(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    PyObject * _result;
    wxPyPolygonShape * _arg0;
    PyObject * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    char *_kwnames[] = { "self","points", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_Create",_kwnames,&_argo0,&_obj1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_Create. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (PyObject *)wxPyPolygonShape_Create(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{
  _resultobj = _result;
}
    return _resultobj;
}

#define wxPyPolygonShape_AddPolygonPoint(_swigobj,_swigarg0)  (_swigobj->AddPolygonPoint(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_AddPolygonPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    int  _arg1 = (int ) 0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","pos", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxPyPolygonShape_AddPolygonPoint",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_AddPolygonPoint. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_AddPolygonPoint(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_CalculatePolygonCentre(_swigobj)  (_swigobj->CalculatePolygonCentre())
static PyObject *_wrap_wxPyPolygonShape_CalculatePolygonCentre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyPolygonShape_CalculatePolygonCentre",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_CalculatePolygonCentre. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_CalculatePolygonCentre(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_DeletePolygonPoint(_swigobj,_swigarg0)  (_swigobj->DeletePolygonPoint(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_DeletePolygonPoint(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    int  _arg1 = (int ) 0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","pos", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O|i:wxPyPolygonShape_DeletePolygonPoint",_kwnames,&_argo0,&_arg1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_DeletePolygonPoint. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_DeletePolygonPoint(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static PyObject * wxPyPolygonShape_GetPoints(wxPyPolygonShape *self) {
            wxList* list = self->GetPoints();
            PyObject*   pyList;
            PyObject*   pyObj;
            wxObject*   wxObj;
            wxNode*     node = list->GetFirst();

            wxPyBeginBlockThreads();
            pyList = PyList_New(0);
            while (node) {
                wxObj = node->GetData();
                pyObj = wxPyConstructObject(wxObj, wxT("wxRealPoint"), 0);
                PyList_Append(pyList, pyObj);
                node = node->GetNext();
            }
            wxPyEndBlockThreads();
            return pyList;
        }
static PyObject *_wrap_wxPyPolygonShape_GetPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    PyObject * _result;
    wxPyPolygonShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyPolygonShape_GetPoints",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_GetPoints. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (PyObject *)wxPyPolygonShape_GetPoints(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}{
  _resultobj = _result;
}
    return _resultobj;
}

#define wxPyPolygonShape_UpdateOriginalPoints(_swigobj)  (_swigobj->UpdateOriginalPoints())
static PyObject *_wrap_wxPyPolygonShape_UpdateOriginalPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyPolygonShape_UpdateOriginalPoints",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_UpdateOriginalPoints. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_UpdateOriginalPoints(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDraw. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnDraw. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDraw(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDrawContents. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnDrawContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDrawContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDrawBranches. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnDrawBranches. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDrawBranches(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnMoveLinks. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnMoveLinks. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnMoveLinks(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnErase",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnErase. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnErase. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnErase(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnEraseContents. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnEraseContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnEraseContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnHighlight. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnHighlight. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnHighlight(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnLeftClick. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnLeftDoubleClick. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnRightClick. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyPolygonShape_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnSize. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyPolygonShape_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnMovePre. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnMovePre. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyPolygonShape_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyPolygonShape_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyPolygonShape_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnMovePost. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnMovePost. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyPolygonShape_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDragLeft. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnBeginDragLeft. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnEndDragLeft. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyPolygonShape_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDragRight. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnBeginDragRight. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyPolygonShape_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnEndDragRight. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyPolygonShape_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDrawOutline. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnDrawOutline. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnDrawControlPoints. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnDrawControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnDrawControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
static PyObject *_wrap_wxPyPolygonShape_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyPolygonShape_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnEraseControlPoints. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnEraseControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnEraseControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnMoveLink. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyPolygonShape_base_OnMoveLink. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnMoveLink(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyPolygonShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnSizingDragLeft. Expected _wxPyPolygonShape_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 wxPyPolygonShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyPolygonShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnSizingBeginDragLeft. Expected _wxPyPolygonShape_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 wxPyPolygonShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyPolygonShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _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:wxPyPolygonShape_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,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnSizingEndDragLeft. Expected _wxPyPolygonShape_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 wxPyPolygonShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyPolygonShape_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnBeginSize. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnBeginSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyPolygonShape_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyPolygonShape_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyPolygonShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyPolygonShape_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyPolygonShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyPolygonShape_base_OnEndSize. Expected _wxPyPolygonShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyPolygonShape_base_OnEndSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static void *SwigwxPyTextShapeTowxPyRectangleShape(void *ptr) {
    wxPyTextShape *src;
    wxPyRectangleShape *dest;
    src = (wxPyTextShape *) ptr;
    dest = (wxPyRectangleShape *) src;
    return (void *) dest;
}

static void *SwigwxPyTextShapeTowxPyShape(void *ptr) {
    wxPyTextShape *src;
    wxPyShape *dest;
    src = (wxPyTextShape *) ptr;
    dest = (wxPyShape *) src;
    return (void *) dest;
}

static void *SwigwxPyTextShapeTowxPyShapeEvtHandler(void *ptr) {
    wxPyTextShape *src;
    wxPyShapeEvtHandler *dest;
    src = (wxPyTextShape *) ptr;
    dest = (wxPyShapeEvtHandler *) src;
    return (void *) dest;
}

static void *SwigwxPyTextShapeTowxObject(void *ptr) {
    wxPyTextShape *src;
    wxObject *dest;
    src = (wxPyTextShape *) ptr;
    dest = (wxObject *) src;
    return (void *) dest;
}

#define new_wxPyTextShape(_swigarg0,_swigarg1) (new wxPyTextShape(_swigarg0,_swigarg1))
static PyObject *_wrap_new_wxPyTextShape(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _result;
    double  _arg0 = (double ) 0.0;
    double  _arg1 = (double ) 0.0;
    char *_kwnames[] = { "width","height", NULL };
    char _ptemp[128];

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"|dd:new_wxPyTextShape",_kwnames,&_arg0,&_arg1)) 
        return NULL;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (wxPyTextShape *)new_wxPyTextShape(_arg0,_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    if (_result) {
        SWIG_MakePtr(_ptemp, (char *) _result,"_wxPyTextShape_p");
        _resultobj = Py_BuildValue("s",_ptemp);
    } else {
        Py_INCREF(Py_None);
        _resultobj = Py_None;
    }
    return _resultobj;
}

#define wxPyTextShape__setCallbackInfo(_swigobj,_swigarg0,_swigarg1)  (_swigobj->_setCallbackInfo(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape__setCallbackInfo(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    PyObject * _arg1;
    PyObject * _arg2;
    PyObject * _argo0 = 0;
    PyObject * _obj1 = 0;
    PyObject * _obj2 = 0;
    char *_kwnames[] = { "self","self","_class", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OOO:wxPyTextShape__setCallbackInfo",_kwnames,&_argo0,&_obj1,&_obj2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape__setCallbackInfo. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
  _arg1 = _obj1;
}
{
  _arg2 = _obj2;
}
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape__setCallbackInfo(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDelete(_swigobj)  (_swigobj->base_OnDelete())
static PyObject *_wrap_wxPyTextShape_base_OnDelete(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxPyTextShape_base_OnDelete",_kwnames,&_argo0)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDelete. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDelete(_arg0);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDraw(_swigobj,_swigarg0)  (_swigobj->base_OnDraw(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnDraw(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnDraw",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDraw. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnDraw. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDraw(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDrawContents(_swigobj,_swigarg0)  (_swigobj->base_OnDrawContents(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnDrawContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnDrawContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDrawContents. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnDrawContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDrawContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDrawBranches(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnDrawBranches(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape_base_OnDrawBranches(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_base_OnDrawBranches",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDrawBranches. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnDrawBranches. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDrawBranches(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnMoveLinks(_swigobj,_swigarg0)  (_swigobj->base_OnMoveLinks(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnMoveLinks(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnMoveLinks",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnMoveLinks. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnMoveLinks. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnMoveLinks(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnErase(_swigobj,_swigarg0)  (_swigobj->base_OnErase(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnErase(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnErase",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnErase. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnErase. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnErase(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnEraseContents(_swigobj,_swigarg0)  (_swigobj->base_OnEraseContents(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnEraseContents(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnEraseContents",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnEraseContents. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnEraseContents. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnEraseContents(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnHighlight(_swigobj,_swigarg0)  (_swigobj->base_OnHighlight(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnHighlight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnHighlight",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnHighlight. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnHighlight. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnHighlight(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnLeftClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnLeftClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnLeftClick. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnLeftClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnLeftDoubleClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnLeftDoubleClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnLeftDoubleClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnLeftDoubleClick. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnLeftDoubleClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnRightClick(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnRightClick(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnRightClick(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnRightClick. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnRightClick(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape_base_OnSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","x","y", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyTextShape_base_OnSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnSize. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnMovePre(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePre(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyTextShape_base_OnMovePre(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    bool  _result;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnMovePre. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnMovePre. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    _result = (bool )wxPyTextShape_base_OnMovePre(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    _resultobj = Py_BuildValue("i",_result);
    return _resultobj;
}

#define wxPyTextShape_base_OnMovePost(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnMovePost(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyTextShape_base_OnMovePost(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnMovePost. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnMovePost. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg6 = (bool ) tempbool6;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnMovePost(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyTextShape_base_OnDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDragLeft. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnBeginDragLeft. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnEndDragLeft. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyTextShape_base_OnDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDragRight. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    _arg1 = (bool ) tempbool1;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDragRight(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnBeginDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnBeginDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnBeginDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnBeginDragRight. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnBeginDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnEndDragRight(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3)  (_swigobj->base_OnEndDragRight(_swigarg0,_swigarg1,_swigarg2,_swigarg3))
static PyObject *_wrap_wxPyTextShape_base_OnEndDragRight(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnEndDragRight. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnEndDragRight(_arg0,_arg1,_arg2,_arg3,_arg4);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDrawOutline(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnDrawOutline(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyTextShape_base_OnDrawOutline(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDrawOutline. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnDrawOutline. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDrawOutline(_arg0,*_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnDrawControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnDrawControlPoints(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnDrawControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnDrawControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnDrawControlPoints. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnDrawControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnDrawControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnEraseControlPoints(_swigobj,_swigarg0)  (_swigobj->base_OnEraseControlPoints(_swigarg0))
static PyObject *_wrap_wxPyTextShape_base_OnEraseControlPoints(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    wxDC * _arg1;
    PyObject * _argo0 = 0;
    PyObject * _argo1 = 0;
    char *_kwnames[] = { "self","dc", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxPyTextShape_base_OnEraseControlPoints",_kwnames,&_argo0,&_argo1)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnEraseControlPoints. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnEraseControlPoints. Expected _wxDC_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnEraseControlPoints(_arg0,*_arg1);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnMoveLink(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnMoveLink(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape_base_OnMoveLink(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_base_OnMoveLink",_kwnames,&_argo0,&_argo1,&tempbool2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnMoveLink. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
    if (_argo1) {
        if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxDC_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxPyTextShape_base_OnMoveLink. Expected _wxDC_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnMoveLink(_arg0,*_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnSizingDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5)  (_swigobj->base_OnSizingDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
static PyObject *_wrap_wxPyTextShape_base_OnSizingDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnSizingDragLeft. Expected _wxPyTextShape_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 wxPyTextShape_base_OnSizingDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
    _arg2 = (bool ) tempbool2;
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnSizingDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5,_arg6);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnSizingBeginDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingBeginDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyTextShape_base_OnSizingBeginDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnSizingBeginDragLeft. Expected _wxPyTextShape_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 wxPyTextShape_base_OnSizingBeginDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnSizingBeginDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnSizingEndDragLeft(_swigobj,_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4)  (_swigobj->base_OnSizingEndDragLeft(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4))
static PyObject *_wrap_wxPyTextShape_base_OnSizingEndDragLeft(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _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:wxPyTextShape_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,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnSizingEndDragLeft. Expected _wxPyTextShape_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 wxPyTextShape_base_OnSizingEndDragLeft. Expected _wxPyControlPoint_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnSizingEndDragLeft(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnBeginSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnBeginSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape_base_OnBeginSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyTextShape_base_OnBeginSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnBeginSize. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnBeginSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

#define wxPyTextShape_base_OnEndSize(_swigobj,_swigarg0,_swigarg1)  (_swigobj->base_OnEndSize(_swigarg0,_swigarg1))
static PyObject *_wrap_wxPyTextShape_base_OnEndSize(PyObject *self, PyObject *args, PyObject *kwargs) {
    PyObject * _resultobj;
    wxPyTextShape * _arg0;
    double  _arg1;
    double  _arg2;
    PyObject * _argo0 = 0;
    char *_kwnames[] = { "self","w","h", NULL };

    self = self;
    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Odd:wxPyTextShape_base_OnEndSize",_kwnames,&_argo0,&_arg1,&_arg2)) 
        return NULL;
    if (_argo0) {
        if (_argo0 == Py_None) { _arg0 = NULL; }
        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxPyTextShape_p")) {
            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxPyTextShape_base_OnEndSize. Expected _wxPyTextShape_p.");
        return NULL;
        }
    }
{
    PyThreadState* __tstate = wxPyBeginAllowThreads();
    wxPyTextShape_base_OnEndSize(_arg0,_arg1,_arg2);

    wxPyEndAllowThreads(__tstate);
    if (PyErr_Occurred()) return NULL;
}    Py_INCREF(Py_None);
    _resultobj = Py_None;
    return _resultobj;
}

static PyMethodDef oglshapes2cMethods[] = {
	 { "wxPyTextShape_base_OnEndSize", (PyCFunction) _wrap_wxPyTextShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyTextShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnMoveLink", (PyCFunction) _wrap_wxPyTextShape_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyTextShape_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyTextShape_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDrawOutline", (PyCFunction) _wrap_wxPyTextShape_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnEndDragRight", (PyCFunction) _wrap_wxPyTextShape_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyTextShape_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDragRight", (PyCFunction) _wrap_wxPyTextShape_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDragLeft", (PyCFunction) _wrap_wxPyTextShape_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnMovePost", (PyCFunction) _wrap_wxPyTextShape_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnMovePre", (PyCFunction) _wrap_wxPyTextShape_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnSize", (PyCFunction) _wrap_wxPyTextShape_base_OnSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnRightClick", (PyCFunction) _wrap_wxPyTextShape_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyTextShape_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnLeftClick", (PyCFunction) _wrap_wxPyTextShape_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnHighlight", (PyCFunction) _wrap_wxPyTextShape_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnEraseContents", (PyCFunction) _wrap_wxPyTextShape_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnErase", (PyCFunction) _wrap_wxPyTextShape_base_OnErase, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnMoveLinks", (PyCFunction) _wrap_wxPyTextShape_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDrawBranches", (PyCFunction) _wrap_wxPyTextShape_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDrawContents", (PyCFunction) _wrap_wxPyTextShape_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDraw", (PyCFunction) _wrap_wxPyTextShape_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape_base_OnDelete", (PyCFunction) _wrap_wxPyTextShape_base_OnDelete, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyTextShape__setCallbackInfo", (PyCFunction) _wrap_wxPyTextShape__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxPyTextShape", (PyCFunction) _wrap_new_wxPyTextShape, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnEndSize", (PyCFunction) _wrap_wxPyPolygonShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyPolygonShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnMoveLink", (PyCFunction) _wrap_wxPyPolygonShape_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyPolygonShape_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDrawOutline", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnEndDragRight", (PyCFunction) _wrap_wxPyPolygonShape_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyPolygonShape_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDragRight", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDragLeft", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnMovePost", (PyCFunction) _wrap_wxPyPolygonShape_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnMovePre", (PyCFunction) _wrap_wxPyPolygonShape_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnSize", (PyCFunction) _wrap_wxPyPolygonShape_base_OnSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnRightClick", (PyCFunction) _wrap_wxPyPolygonShape_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyPolygonShape_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnLeftClick", (PyCFunction) _wrap_wxPyPolygonShape_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnHighlight", (PyCFunction) _wrap_wxPyPolygonShape_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnEraseContents", (PyCFunction) _wrap_wxPyPolygonShape_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnErase", (PyCFunction) _wrap_wxPyPolygonShape_base_OnErase, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnMoveLinks", (PyCFunction) _wrap_wxPyPolygonShape_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDrawBranches", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDrawContents", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_base_OnDraw", (PyCFunction) _wrap_wxPyPolygonShape_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_UpdateOriginalPoints", (PyCFunction) _wrap_wxPyPolygonShape_UpdateOriginalPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_GetPoints", (PyCFunction) _wrap_wxPyPolygonShape_GetPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_DeletePolygonPoint", (PyCFunction) _wrap_wxPyPolygonShape_DeletePolygonPoint, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_CalculatePolygonCentre", (PyCFunction) _wrap_wxPyPolygonShape_CalculatePolygonCentre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_AddPolygonPoint", (PyCFunction) _wrap_wxPyPolygonShape_AddPolygonPoint, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape_Create", (PyCFunction) _wrap_wxPyPolygonShape_Create, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyPolygonShape__setCallbackInfo", (PyCFunction) _wrap_wxPyPolygonShape__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxPyPolygonShape", (PyCFunction) _wrap_new_wxPyPolygonShape, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnEndSize", (PyCFunction) _wrap_wxPyLineShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyLineShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnMoveLink", (PyCFunction) _wrap_wxPyLineShape_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyLineShape_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyLineShape_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDrawOutline", (PyCFunction) _wrap_wxPyLineShape_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnEndDragRight", (PyCFunction) _wrap_wxPyLineShape_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyLineShape_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDragRight", (PyCFunction) _wrap_wxPyLineShape_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDragLeft", (PyCFunction) _wrap_wxPyLineShape_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnMovePost", (PyCFunction) _wrap_wxPyLineShape_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnMovePre", (PyCFunction) _wrap_wxPyLineShape_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnSize", (PyCFunction) _wrap_wxPyLineShape_base_OnSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnRightClick", (PyCFunction) _wrap_wxPyLineShape_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyLineShape_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnLeftClick", (PyCFunction) _wrap_wxPyLineShape_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnHighlight", (PyCFunction) _wrap_wxPyLineShape_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnEraseContents", (PyCFunction) _wrap_wxPyLineShape_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnErase", (PyCFunction) _wrap_wxPyLineShape_base_OnErase, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnMoveLinks", (PyCFunction) _wrap_wxPyLineShape_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDrawBranches", (PyCFunction) _wrap_wxPyLineShape_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDrawContents", (PyCFunction) _wrap_wxPyLineShape_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_base_OnDraw", (PyCFunction) _wrap_wxPyLineShape_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_Unlink", (PyCFunction) _wrap_wxPyLineShape_Unlink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_Straighten", (PyCFunction) _wrap_wxPyLineShape_Straighten, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetTo", (PyCFunction) _wrap_wxPyLineShape_SetTo, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetSpline", (PyCFunction) _wrap_wxPyLineShape_SetSpline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetIgnoreOffsets", (PyCFunction) _wrap_wxPyLineShape_SetIgnoreOffsets, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetFrom", (PyCFunction) _wrap_wxPyLineShape_SetFrom, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetEnds", (PyCFunction) _wrap_wxPyLineShape_SetEnds, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetAttachmentTo", (PyCFunction) _wrap_wxPyLineShape_SetAttachmentTo, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetAttachments", (PyCFunction) _wrap_wxPyLineShape_SetAttachments, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_SetAttachmentFrom", (PyCFunction) _wrap_wxPyLineShape_SetAttachmentFrom, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetLineControlPoints", (PyCFunction) _wrap_wxPyLineShape_GetLineControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_MakeLineControlPoints", (PyCFunction) _wrap_wxPyLineShape_MakeLineControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_IsSpline", (PyCFunction) _wrap_wxPyLineShape_IsSpline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_IsEnd", (PyCFunction) _wrap_wxPyLineShape_IsEnd, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_InsertLineControlPoint", (PyCFunction) _wrap_wxPyLineShape_InsertLineControlPoint, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_Initialise", (PyCFunction) _wrap_wxPyLineShape_Initialise, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetTo", (PyCFunction) _wrap_wxPyLineShape_GetTo, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetNextControlPoint", (PyCFunction) _wrap_wxPyLineShape_GetNextControlPoint, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetLabelPosition", (PyCFunction) _wrap_wxPyLineShape_GetLabelPosition, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetFrom", (PyCFunction) _wrap_wxPyLineShape_GetFrom, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetEnds", (PyCFunction) _wrap_wxPyLineShape_GetEnds, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetAttachmentTo", (PyCFunction) _wrap_wxPyLineShape_GetAttachmentTo, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_GetAttachmentFrom", (PyCFunction) _wrap_wxPyLineShape_GetAttachmentFrom, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindNth", (PyCFunction) _wrap_wxPyLineShape_FindNth, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindMinimumWidth", (PyCFunction) _wrap_wxPyLineShape_FindMinimumWidth, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindLinePosition", (PyCFunction) _wrap_wxPyLineShape_FindLinePosition, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindLineEndPoints", (PyCFunction) _wrap_wxPyLineShape_FindLineEndPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindArrowHead", (PyCFunction) _wrap_wxPyLineShape_FindArrowHead, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_FindArrowHeadId", (PyCFunction) _wrap_wxPyLineShape_FindArrowHeadId, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_EraseRegion", (PyCFunction) _wrap_wxPyLineShape_EraseRegion, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DrawRegion", (PyCFunction) _wrap_wxPyLineShape_DrawRegion, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DrawArrows", (PyCFunction) _wrap_wxPyLineShape_DrawArrows, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DeleteLineControlPoint", (PyCFunction) _wrap_wxPyLineShape_DeleteLineControlPoint, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DeleteArrowHead", (PyCFunction) _wrap_wxPyLineShape_DeleteArrowHead, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DeleteArrowHeadId", (PyCFunction) _wrap_wxPyLineShape_DeleteArrowHeadId, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_DrawArrow", (PyCFunction) _wrap_wxPyLineShape_DrawArrow, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_ClearArrowsAtPosition", (PyCFunction) _wrap_wxPyLineShape_ClearArrowsAtPosition, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_ClearArrow", (PyCFunction) _wrap_wxPyLineShape_ClearArrow, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_AddArrowOrdered", (PyCFunction) _wrap_wxPyLineShape_AddArrowOrdered, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape_AddArrow", (PyCFunction) _wrap_wxPyLineShape_AddArrow, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyLineShape__setCallbackInfo", (PyCFunction) _wrap_wxPyLineShape__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxPyLineShape", (PyCFunction) _wrap_new_wxPyLineShape, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_SetSpacing", (PyCFunction) _wrap_wxArrowHead_SetSpacing, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_SetSize", (PyCFunction) _wrap_wxArrowHead_SetSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetArrowSize", (PyCFunction) _wrap_wxArrowHead_GetArrowSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetArrowEnd", (PyCFunction) _wrap_wxArrowHead_GetArrowEnd, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetId", (PyCFunction) _wrap_wxArrowHead_GetId, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetMetaFile", (PyCFunction) _wrap_wxArrowHead_GetMetaFile, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_SetYOffset", (PyCFunction) _wrap_wxArrowHead_SetYOffset, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_SetXOffset", (PyCFunction) _wrap_wxArrowHead_SetXOffset, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetName", (PyCFunction) _wrap_wxArrowHead_GetName, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetSize", (PyCFunction) _wrap_wxArrowHead_GetSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetSpacing", (PyCFunction) _wrap_wxArrowHead_GetSpacing, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetYOffset", (PyCFunction) _wrap_wxArrowHead_GetYOffset, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetXOffset", (PyCFunction) _wrap_wxArrowHead_GetXOffset, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_SetPosition", (PyCFunction) _wrap_wxArrowHead_SetPosition, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead_GetPosition", (PyCFunction) _wrap_wxArrowHead_GetPosition, METH_VARARGS | METH_KEYWORDS },
	 { "wxArrowHead__GetType", (PyCFunction) _wrap_wxArrowHead__GetType, METH_VARARGS | METH_KEYWORDS },
	 { "delete_wxArrowHead", (PyCFunction) _wrap_delete_wxArrowHead, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxArrowHead", (PyCFunction) _wrap_new_wxArrowHead, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnEndSize", (PyCFunction) _wrap_wxPyCircleShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyCircleShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnMoveLink", (PyCFunction) _wrap_wxPyCircleShape_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyCircleShape_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyCircleShape_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDrawOutline", (PyCFunction) _wrap_wxPyCircleShape_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnEndDragRight", (PyCFunction) _wrap_wxPyCircleShape_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyCircleShape_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDragRight", (PyCFunction) _wrap_wxPyCircleShape_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDragLeft", (PyCFunction) _wrap_wxPyCircleShape_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnMovePost", (PyCFunction) _wrap_wxPyCircleShape_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnMovePre", (PyCFunction) _wrap_wxPyCircleShape_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnSize", (PyCFunction) _wrap_wxPyCircleShape_base_OnSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnRightClick", (PyCFunction) _wrap_wxPyCircleShape_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyCircleShape_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnLeftClick", (PyCFunction) _wrap_wxPyCircleShape_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnHighlight", (PyCFunction) _wrap_wxPyCircleShape_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnEraseContents", (PyCFunction) _wrap_wxPyCircleShape_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnErase", (PyCFunction) _wrap_wxPyCircleShape_base_OnErase, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnMoveLinks", (PyCFunction) _wrap_wxPyCircleShape_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDrawBranches", (PyCFunction) _wrap_wxPyCircleShape_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDrawContents", (PyCFunction) _wrap_wxPyCircleShape_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape_base_OnDraw", (PyCFunction) _wrap_wxPyCircleShape_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyCircleShape__setCallbackInfo", (PyCFunction) _wrap_wxPyCircleShape__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxPyCircleShape", (PyCFunction) _wrap_new_wxPyCircleShape, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnEndSize", (PyCFunction) _wrap_wxPyEllipseShape_base_OnEndSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnBeginSize", (PyCFunction) _wrap_wxPyEllipseShape_base_OnBeginSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnSizingEndDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnSizingEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnSizingBeginDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnSizingBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnSizingDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnSizingDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnMoveLink", (PyCFunction) _wrap_wxPyEllipseShape_base_OnMoveLink, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnEraseControlPoints", (PyCFunction) _wrap_wxPyEllipseShape_base_OnEraseControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDrawControlPoints", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDrawControlPoints, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDrawOutline", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDrawOutline, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnEndDragRight", (PyCFunction) _wrap_wxPyEllipseShape_base_OnEndDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnBeginDragRight", (PyCFunction) _wrap_wxPyEllipseShape_base_OnBeginDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDragRight", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDragRight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnEndDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnEndDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnBeginDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnBeginDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDragLeft", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDragLeft, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnMovePost", (PyCFunction) _wrap_wxPyEllipseShape_base_OnMovePost, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnMovePre", (PyCFunction) _wrap_wxPyEllipseShape_base_OnMovePre, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnSize", (PyCFunction) _wrap_wxPyEllipseShape_base_OnSize, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnRightClick", (PyCFunction) _wrap_wxPyEllipseShape_base_OnRightClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnLeftDoubleClick", (PyCFunction) _wrap_wxPyEllipseShape_base_OnLeftDoubleClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnLeftClick", (PyCFunction) _wrap_wxPyEllipseShape_base_OnLeftClick, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnHighlight", (PyCFunction) _wrap_wxPyEllipseShape_base_OnHighlight, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnEraseContents", (PyCFunction) _wrap_wxPyEllipseShape_base_OnEraseContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnErase", (PyCFunction) _wrap_wxPyEllipseShape_base_OnErase, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnMoveLinks", (PyCFunction) _wrap_wxPyEllipseShape_base_OnMoveLinks, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDrawBranches", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDrawBranches, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDrawContents", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDrawContents, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape_base_OnDraw", (PyCFunction) _wrap_wxPyEllipseShape_base_OnDraw, METH_VARARGS | METH_KEYWORDS },
	 { "wxPyEllipseShape__setCallbackInfo", (PyCFunction) _wrap_wxPyEllipseShape__setCallbackInfo, METH_VARARGS | METH_KEYWORDS },
	 { "new_wxPyEllipseShape", (PyCFunction) _wrap_new_wxPyEllipseShape, METH_VARARGS | METH_KEYWORDS },
	 { NULL, NULL }
};
#ifdef __cplusplus
}
#endif
/*
 * This table is used by the pointer type-checker
 */
static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
    { "_signed_long","_long",0},
    { "_wxPrintQuality","_wxCoord",0},
    { "_wxPrintQuality","_int",0},
    { "_wxPrintQuality","_signed_int",0},
    { "_wxPrintQuality","_unsigned_int",0},
    { "_wxPrintQuality","_wxWindowID",0},
    { "_wxPrintQuality","_uint",0},
    { "_wxPrintQuality","_EBool",0},
    { "_wxPrintQuality","_size_t",0},
    { "_wxPrintQuality","_time_t",0},
    { "_byte","_unsigned_char",0},
    { "_long","_unsigned_long",0},
    { "_long","_signed_long",0},
    { "_size_t","_wxCoord",0},
    { "_size_t","_wxPrintQuality",0},
    { "_size_t","_time_t",0},
    { "_size_t","_unsigned_int",0},
    { "_size_t","_int",0},
    { "_size_t","_wxWindowID",0},
    { "_size_t","_uint",0},
    { "_uint","_wxCoord",0},
    { "_uint","_wxPrintQuality",0},
    { "_uint","_time_t",0},
    { "_uint","_size_t",0},
    { "_uint","_unsigned_int",0},
    { "_uint","_int",0},
    { "_uint","_wxWindowID",0},
    { "_wxChar","_char",0},
    { "_char","_wxChar",0},
    { "_struct_wxNativeFontInfo","_wxNativeFontInfo",0},
    { "_EBool","_wxCoord",0},
    { "_EBool","_wxPrintQuality",0},
    { "_EBool","_signed_int",0},
    { "_EBool","_int",0},
    { "_EBool","_wxWindowID",0},
    { "_unsigned_long","_long",0},
    { "_wxNativeFontInfo","_struct_wxNativeFontInfo",0},
    { "_signed_int","_wxCoord",0},
    { "_signed_int","_wxPrintQuality",0},
    { "_signed_int","_EBool",0},
    { "_signed_int","_wxWindowID",0},
    { "_signed_int","_int",0},
    { "_WXTYPE","_wxDateTime_t",0},
    { "_WXTYPE","_short",0},
    { "_WXTYPE","_signed_short",0},
    { "_WXTYPE","_unsigned_short",0},
    { "_unsigned_short","_wxDateTime_t",0},
    { "_unsigned_short","_WXTYPE",0},
    { "_unsigned_short","_short",0},
    { "_wxObject","_wxPyTextShape",SwigwxPyTextShapeTowxObject},
    { "_wxObject","_wxPyPolygonShape",SwigwxPyPolygonShapeTowxObject},
    { "_wxObject","_wxPyLineShape",SwigwxPyLineShapeTowxObject},
    { "_wxObject","_wxArrowHead",SwigwxArrowHeadTowxObject},
    { "_wxObject","_wxPyCircleShape",SwigwxPyCircleShapeTowxObject},
    { "_wxObject","_wxPyEllipseShape",SwigwxPyEllipseShapeTowxObject},
    { "_signed_short","_WXTYPE",0},
    { "_signed_short","_short",0},
    { "_wxPyShape","_wxPyTextShape",SwigwxPyTextShapeTowxPyShape},
    { "_wxPyShape","_wxPyPolygonShape",SwigwxPyPolygonShapeTowxPyShape},
    { "_wxPyShape","_wxPyLineShape",SwigwxPyLineShapeTowxPyShape},
    { "_wxPyShape","_wxPyCircleShape",SwigwxPyCircleShapeTowxPyShape},
    { "_wxPyShape","_wxPyEllipseShape",SwigwxPyEllipseShapeTowxPyShape},
    { "_unsigned_char","_byte",0},
    { "_unsigned_int","_wxCoord",0},
    { "_unsigned_int","_wxPrintQuality",0},
    { "_unsigned_int","_time_t",0},
    { "_unsigned_int","_size_t",0},
    { "_unsigned_int","_uint",0},
    { "_unsigned_int","_wxWindowID",0},
    { "_unsigned_int","_int",0},
    { "_short","_wxDateTime_t",0},
    { "_short","_WXTYPE",0},
    { "_short","_unsigned_short",0},
    { "_short","_signed_short",0},
    { "_wxWindowID","_wxCoord",0},
    { "_wxWindowID","_wxPrintQuality",0},
    { "_wxWindowID","_time_t",0},
    { "_wxWindowID","_size_t",0},
    { "_wxWindowID","_EBool",0},
    { "_wxWindowID","_uint",0},
    { "_wxWindowID","_int",0},
    { "_wxWindowID","_signed_int",0},
    { "_wxWindowID","_unsigned_int",0},
    { "_int","_wxCoord",0},
    { "_int","_wxPrintQuality",0},
    { "_int","_time_t",0},
    { "_int","_size_t",0},
    { "_int","_EBool",0},
    { "_int","_uint",0},
    { "_int","_wxWindowID",0},
    { "_int","_unsigned_int",0},
    { "_int","_signed_int",0},
    { "_wxDateTime_t","_unsigned_short",0},
    { "_wxDateTime_t","_short",0},
    { "_wxDateTime_t","_WXTYPE",0},
    { "_time_t","_wxCoord",0},
    { "_time_t","_wxPrintQuality",0},
    { "_time_t","_unsigned_int",0},
    { "_time_t","_int",0},
    { "_time_t","_wxWindowID",0},
    { "_time_t","_uint",0},
    { "_time_t","_size_t",0},
    { "_wxCoord","_int",0},
    { "_wxCoord","_signed_int",0},
    { "_wxCoord","_unsigned_int",0},
    { "_wxCoord","_wxWindowID",0},
    { "_wxCoord","_uint",0},
    { "_wxCoord","_EBool",0},
    { "_wxCoord","_size_t",0},
    { "_wxCoord","_time_t",0},
    { "_wxCoord","_wxPrintQuality",0},
    { "_wxPyEllipseShape","_wxPyCircleShape",SwigwxPyCircleShapeTowxPyEllipseShape},
    { "_wxPyShapeEvtHandler","_wxPyTextShape",SwigwxPyTextShapeTowxPyShapeEvtHandler},
    { "_wxPyShapeEvtHandler","_wxPyPolygonShape",SwigwxPyPolygonShapeTowxPyShapeEvtHandler},
    { "_wxPyShapeEvtHandler","_wxPyLineShape",SwigwxPyLineShapeTowxPyShapeEvtHandler},
    { "_wxPyShapeEvtHandler","_wxPyCircleShape",SwigwxPyCircleShapeTowxPyShapeEvtHandler},
    { "_wxPyShapeEvtHandler","_wxPyEllipseShape",SwigwxPyEllipseShapeTowxPyShapeEvtHandler},
    { "_wxPyRectangleShape","_wxPyTextShape",SwigwxPyTextShapeTowxPyRectangleShape},
{0,0,0}};

static PyObject *SWIG_globals;
#ifdef __cplusplus
extern "C" 
#endif
SWIGEXPORT(void) initoglshapes2c() {
	 PyObject *m, *d;
	 SWIG_globals = SWIG_newvarlink();
	 m = Py_InitModule("oglshapes2c", oglshapes2cMethods);
	 d = PyModule_GetDict(m);
{
   int i;
   for (i = 0; _swig_mapping[i].n1; i++)
        SWIG_RegisterMapping(_swig_mapping[i].n1,_swig_mapping[i].n2,_swig_mapping[i].pcnv);
}
}
