]> git.saurik.com Git - wxWidgets.git/commitdiff
reSWIGged
authorRobin Dunn <robin@alldunn.com>
Sun, 29 Oct 2006 03:03:29 +0000 (03:03 +0000)
committerRobin Dunn <robin@alldunn.com>
Sun, 29 Oct 2006 03:03:29 +0000 (03:03 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

18 files changed:
wxPython/src/gtk/_gdi.py
wxPython/src/gtk/_gdi_wrap.cpp
wxPython/src/gtk/aui.py
wxPython/src/gtk/aui_wrap.cpp
wxPython/src/gtk/grid.py
wxPython/src/gtk/grid_wrap.cpp
wxPython/src/mac/_gdi.py
wxPython/src/mac/_gdi_wrap.cpp
wxPython/src/mac/aui.py
wxPython/src/mac/aui_wrap.cpp
wxPython/src/mac/grid.py
wxPython/src/mac/grid_wrap.cpp
wxPython/src/msw/_gdi.py
wxPython/src/msw/_gdi_wrap.cpp
wxPython/src/msw/aui.py
wxPython/src/msw/aui_wrap.cpp
wxPython/src/msw/grid.py
wxPython/src/msw/grid_wrap.cpp

index 378e8932640fc734f9eb6e8e68e790d74197c1e5..046d5e1c118354a57b4192fde50c1d3134f49cbf 100644 (file)
@@ -4963,6 +4963,112 @@ class GraphicsFont(GraphicsObject):
     __del__ = lambda self : None;
 _gdi_.GraphicsFont_swigregister(GraphicsFont)
 
+class GraphicsMatrix(GraphicsObject):
+    """Proxy of C++ GraphicsMatrix class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
+    __del__ = lambda self : None;
+    def Concat(*args, **kwargs):
+        """
+        Concat(self, GraphicsMatrix t)
+
+        concatenates the matrix
+        """
+        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
+
+    def Copy(*args, **kwargs):
+        """
+        Copy(self, GraphicsMatrix t)
+
+        Copy the passed in matrix to this one.
+        """
+        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
+
+    def Set(*args, **kwargs):
+        """
+        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
+            Double tx=0.0, Double ty=0.0)
+
+        sets the matrix to the respective values
+        """
+        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
+
+    def Invert(*args, **kwargs):
+        """
+        Invert(self)
+
+        makes this the inverse matrix
+        """
+        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
+
+    def IsEqual(*args, **kwargs):
+        """
+        IsEqual(self, GraphicsMatrix t) -> bool
+
+        returns true if the elements of the transformation matrix are equal
+        """
+        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
+
+    def IsIdentity(*args, **kwargs):
+        """
+        IsIdentity(self) -> bool
+
+        return true if this is the identity matrix
+        """
+        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
+
+    def Translate(*args, **kwargs):
+        """
+        Translate(self, Double dx, Double dy)
+
+        add the translation to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
+
+    def Scale(*args, **kwargs):
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        add the scale to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
+
+    def Rotate(*args, **kwargs):
+        """
+        Rotate(self, Double angle)
+
+        add the rotation to this matrix (radians)
+        """
+        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
+
+    def TransformPoint(*args, **kwargs):
+        """
+        TransformPoint(self, x, y) --> (x, y)
+
+        applies that matrix to the point
+        """
+        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
+
+    def TransformDistance(*args, **kwargs):
+        """
+        TransformDistance(self, dx, dy) --> (dx, dy)
+
+        applies the matrix except for translations
+        """
+        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
+
+    def GetNativeMatrix(*args, **kwargs):
+        """
+        GetNativeMatrix(self) -> void
+
+        returns the native representation
+        """
+        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
+
+_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
+
 class GraphicsPath(GraphicsObject):
     """Proxy of C++ GraphicsPath class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -4970,10 +5076,6 @@ class GraphicsPath(GraphicsObject):
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsPath"""
-        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
-
     def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
@@ -5124,126 +5226,12 @@ class GraphicsPath(GraphicsObject):
 
     def Contains(*args):
         """
-        Contains(self, Double x, Double y, int fillStyle=WINDING_RULE) -> bool
-        Contains(self, wxPoint2DDouble c, int fillStyle=WINDING_RULE) -> bool
+        Contains(self, Double x, Double y, int fillStyle=ODDEVEN_RULE) -> bool
+        Contains(self, wxPoint2DDouble c, int fillStyle=ODDEVEN_RULE) -> bool
         """
         return _gdi_.GraphicsPath_Contains(*args)
 
 _gdi_.GraphicsPath_swigregister(GraphicsPath)
-cvar = _gdi_.cvar
-NullGraphicsPen = cvar.NullGraphicsPen
-NullGraphicsBrush = cvar.NullGraphicsBrush
-NullGraphicsFont = cvar.NullGraphicsFont
-
-class GraphicsMatrix(GraphicsObject):
-    """Proxy of C++ GraphicsMatrix class"""
-    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
-    def __init__(self): raise AttributeError, "No constructor defined"
-    __repr__ = _swig_repr
-    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
-    __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsMatrix"""
-        return _gdi_.GraphicsMatrix_Clone(*args, **kwargs)
-
-    def Concat(*args, **kwargs):
-        """
-        Concat(self, GraphicsMatrix t)
-
-        concatenates the matrix
-        """
-        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
-
-    def Copy(*args, **kwargs):
-        """
-        Copy(self, GraphicsMatrix t)
-
-        copies the passed in matrix
-        """
-        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
-
-    def Set(*args, **kwargs):
-        """
-        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
-            Double tx=0.0, Double ty=0.0)
-
-        sets the matrix to the respective values
-        """
-        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
-
-    def Invert(*args, **kwargs):
-        """
-        Invert(self)
-
-        makes this the inverse matrix
-        """
-        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
-
-    def IsEqual(*args, **kwargs):
-        """
-        IsEqual(self, GraphicsMatrix t) -> bool
-
-        returns true if the elements of the transformation matrix are equal
-        """
-        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
-
-    def IsIdentity(*args, **kwargs):
-        """
-        IsIdentity(self) -> bool
-
-        return true if this is the identity matrix
-        """
-        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
-
-    def Translate(*args, **kwargs):
-        """
-        Translate(self, Double dx, Double dy)
-
-        add the translation to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
-
-    def Scale(*args, **kwargs):
-        """
-        Scale(self, Double xScale, Double yScale)
-
-        add the scale to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
-
-    def Rotate(*args, **kwargs):
-        """
-        Rotate(self, Double angle)
-
-        add the rotation to this matrix (radians)
-        """
-        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
-
-    def TransformPoint(*args, **kwargs):
-        """
-        TransformPoint(self, x, y) --> (x, y)
-
-        applies that matrix to the point
-        """
-        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
-
-    def TransformDistance(*args, **kwargs):
-        """
-        TransformDistance(self, dx, dy) --> (dx, dy)
-
-        applies the matrix except for translations
-        """
-        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
-
-    def GetNativeMatrix(*args, **kwargs):
-        """
-        GetNativeMatrix(self) -> void
-
-        returns the native representation
-        """
-        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
-
-_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
 
 class GraphicsContext(GraphicsObject):
     """Proxy of C++ GraphicsContext class"""
@@ -5399,6 +5387,30 @@ class GraphicsContext(GraphicsObject):
         """
         return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
+    def ConcatTransform(*args, **kwargs):
+        """
+        ConcatTransform(self, GraphicsMatrix matrix)
+
+        concatenates this transform with the current transform of this context
+        """
+        return _gdi_.GraphicsContext_ConcatTransform(*args, **kwargs)
+
+    def SetTransform(*args, **kwargs):
+        """
+        SetTransform(self, GraphicsMatrix matrix)
+
+        sets the transform of this context
+        """
+        return _gdi_.GraphicsContext_SetTransform(*args, **kwargs)
+
+    def GetTransform(*args, **kwargs):
+        """
+        GetTransform(self) -> GraphicsMatrix
+
+        gets the matrix of this context
+        """
+        return _gdi_.GraphicsContext_GetTransform(*args, **kwargs)
+
     def SetPen(*args):
         """
         SetPen(self, GraphicsPen pen)
@@ -5436,7 +5448,7 @@ class GraphicsContext(GraphicsObject):
 
     def FillPath(*args, **kwargs):
         """
-        FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+        FillPath(self, GraphicsPath path, int fillStyle=ODDEVEN_RULE)
 
         fills a path with the current brush
         """
@@ -5444,7 +5456,7 @@ class GraphicsContext(GraphicsObject):
 
     def DrawPath(*args, **kwargs):
         """
-        DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+        DrawPath(self, GraphicsPath path, int fillStyle=ODDEVEN_RULE)
 
         draws a path by first filling and then stroking
         """
@@ -5504,7 +5516,7 @@ class GraphicsContext(GraphicsObject):
 
     def DrawLines(*args, **kwargs):
         """
-        DrawLines(self, size_t points, int fillStyle=WINDING_RULE)
+        DrawLines(self, size_t points, int fillStyle=ODDEVEN_RULE)
 
         draws a polygon
         """
@@ -5543,6 +5555,12 @@ class GraphicsContext(GraphicsObject):
         return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
 
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
+cvar = _gdi_.cvar
+NullGraphicsPen = cvar.NullGraphicsPen
+NullGraphicsBrush = cvar.NullGraphicsBrush
+NullGraphicsFont = cvar.NullGraphicsFont
+NullGraphicsMatrix = cvar.NullGraphicsMatrix
+NullGraphicsPath = cvar.NullGraphicsPath
 
 def GraphicsContext_Create(*args):
   """
index 8244e8a4a0dd403a991eee7d8717e2fc77a38a6c..a59a42b386aaee3fee8378aae00e4246444780eb 100644 (file)
@@ -3628,8 +3628,6 @@ public :
     }
     virtual ~wxGraphicsPath() {}
 
-    virtual wxGraphicsPath *Clone() const { return NULL; }
-
     void MoveToPoint( wxDouble, wxDouble ) {}
     void MoveToPoint( const wxPoint2DDouble& ) {}
     void AddLineToPoint( wxDouble, wxDouble ) {}
@@ -3659,6 +3657,7 @@ public :
     bool Contains( wxDouble , wxDouble , int ) { return false; }
     bool Contains( const wxPoint2DDouble& , int ) { return false; }
 };
+wxGraphicsPath wxNullGraphicsPath;
 
 
 class wxGraphicsMatrix : public wxGraphicsObject
@@ -3669,7 +3668,6 @@ public :
                         "wx.GraphicsMatrix is not available on this platform.");
     }
     virtual ~wxGraphicsMatrix() {}
-    virtual wxGraphicsMatrix *Clone() const { return NULL; }
     virtual void Concat( const wxGraphicsMatrix * ) {}
     virtual void Copy( const wxGraphicsMatrix * )  {}
     virtual void Set(wxDouble , wxDouble , wxDouble , wxDouble ,
@@ -3684,7 +3682,7 @@ public :
     virtual void TransformDistance( wxDouble *, wxDouble * ) {}
     virtual void * GetNativeMatrix() const { return NULL; }
 };
-
+wxGraphicsMatrix wxNullGraphicsMatrix;
 
 
 class wxGraphicsContext : public wxGraphicsObject
@@ -3843,6 +3841,9 @@ public:
 
 #endif
 
+SWIGINTERN void wxGraphicsMatrix_Copy(wxGraphicsMatrix *self,wxGraphicsMatrix const &t){
+            *self = t;
+        }
 SWIGINTERN PyObject *wxGraphicsContext_GetTextExtent(wxGraphicsContext *self,wxString const &text){
             wxDouble width = 0.0,
                      height = 0.0;
@@ -25150,62 +25151,20 @@ SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
-SWIGINTERN int NullGraphicsPen_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsPen_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsFont_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsFont_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
     delete arg1;
     
@@ -25218,62 +25177,75 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    (arg1)->Concat((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->MoveToPoint(arg2,arg3);
+    wxGraphicsMatrix_Copy(arg1,(wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25283,26 +25255,90 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 = (wxDouble) 1.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxDouble arg5 = (wxDouble) 1.0 ;
+  wxDouble arg6 = (wxDouble) 0.0 ;
+  wxDouble arg7 = (wxDouble) 0.0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  double val7 ;
+  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
+  }
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
+  }
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
+  }
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
   {
-    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25312,55 +25348,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
-    (arg1)->AddLineToPoint(arg2,arg3);
+    (arg1)->Invert();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25370,116 +25373,112 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
   }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsIdentity();
+    if (PyErr_Occurred()) SWIG_fail;
   }
-  
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+  };
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
-  } 
-  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->Translate(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25489,38 +25488,42 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
-  wxPoint2D *arg3 = 0 ;
-  wxPoint2D *arg4 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
-  wxPoint2D temp3 ;
-  wxPoint2D temp4 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+  };
   
-  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
-  }
-  {
-    arg3 = &temp3;
-    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
-  }
-  {
-    arg4 = &temp4;
-    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    (arg1)->Scale(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25530,52 +25533,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[8];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
-  --argc;
-  if (argc == 4) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "path", NULL 
+    (char *) "self",(char *) "angle", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
   {
-    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    (arg1)->Rotate(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25585,119 +25569,229 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    (arg1)->CloseSubpath();
-    if (PyErr_Occurred()) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    ((wxGraphicsMatrix const *)arg1)->TransformPoint(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    ((wxGraphicsMatrix const *)arg1)->TransformDistance(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  void *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetCurrentPoint();
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  bool val7 ;
-  int ecode7 = 0 ;
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
-  } 
-  arg7 = static_cast< bool >(val7);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->MoveToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25707,58 +25801,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxPoint2D *arg2 = 0 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   wxPoint2D temp2 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  bool val6 ;
-  int ecode6 = 0 ;
   
-  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
     arg2 = &temp2;
     if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
-  } 
-  arg6 = static_cast< bool >(val6);
   {
-    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25768,79 +25830,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[8];
+  PyObject *argv[4];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
   --argc;
-  if (argc == 6) {
-    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
+  if (argc == 2) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
   }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
+  if (argc == 3) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    (arg1)->AddLineToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25850,60 +25888,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25913,61 +25917,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  {
-    (arg1)->AddCircle(arg2,arg3,arg4);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -25975,6 +25944,7 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -25987,49 +25957,47 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
-  };
+  double val7 ;
+  int ecode7 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
   if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
   } 
   arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
   if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
   if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
+  } 
+  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26039,132 +26007,38 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  {
+    arg3 = &temp3;
+    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg4 = &temp4;
+    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26174,57 +26048,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 4) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *arg2 = (void *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int res2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "p", NULL 
+    (char *) "self",(char *) "path", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->UnGetNativePath(arg2);
+    (arg1)->AddPath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26234,33 +26106,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "matrix", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Transform(arg2);
+    (arg1)->CloseSubpath();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26270,10 +26131,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxRect2DDouble result;
+  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -26282,179 +26143,225 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), P
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetBox();
+    result = ((wxGraphicsPath const *)arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  int arg4 = (int) wxWINDING_RULE ;
-  bool result;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
+  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  int val4 ;
+  double val4 ;
   int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  bool val7 ;
+  int ecode7 = 0 ;
   
-  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  if (swig_obj[3]) {
-    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
-  }
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
+  } 
+  arg7 = static_cast< bool >(val7);
   {
-    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2DDouble *arg2 = 0 ;
-  int arg3 = (int) wxWINDING_RULE ;
-  bool result;
+  wxPoint2D *arg2 = 0 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  int val3 ;
+  wxPoint2D temp2 ;
+  double val3 ;
   int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  bool val6 ;
+  int ecode6 = 0 ;
   
-  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
-  if (swig_obj[2]) {
-    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
-    } 
-    arg3 = static_cast< int >(val3);
-  }
   {
-    result = (bool)(arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
+  } 
+  arg6 = static_cast< bool >(val6);
   {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[5];
+  PyObject *argv[8];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
   --argc;
-  if ((argc >= 2) && (argc <= 3)) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    if (argc > 2) {
-      {
-        {
-          int res = SWIG_AsVal_int(argv[2], NULL);
-          _v = SWIG_CheckState(res);
-        }
-      }
-      if (!_v) goto check_1;
-    }
-    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
   }
-check_1:
-  
-  if ((argc >= 3) && (argc <= 4)) {
-    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *obj;
-  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
-  return SWIG_Py_Void();
-}
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    delete arg1;
-    
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26464,59 +26371,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
-  
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Clone" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (wxGraphicsMatrix *)((wxGraphicsMatrix const *)arg1)->Clone();
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26526,33 +26434,51 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
   {
-    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddCircle(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26562,15 +26488,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 = (wxDouble) 1.0 ;
-  wxDouble arg3 = (wxDouble) 0.0 ;
-  wxDouble arg4 = (wxDouble) 0.0 ;
-  wxDouble arg5 = (wxDouble) 1.0 ;
-  wxDouble arg6 = (wxDouble) 0.0 ;
-  wxDouble arg7 = (wxDouble) 0.0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26583,69 +26508,49 @@ SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), Py
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_double(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
-    } 
-    arg2 = static_cast< wxDouble >(val2);
-  }
-  if (obj2) {
-    ecode3 = SWIG_AsVal_double(obj2, &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
-    } 
-    arg3 = static_cast< wxDouble >(val3);
-  }
-  if (obj3) {
-    ecode4 = SWIG_AsVal_double(obj3, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
-    } 
-    arg4 = static_cast< wxDouble >(val4);
-  }
-  if (obj4) {
-    ecode5 = SWIG_AsVal_double(obj4, &val5);
-    if (!SWIG_IsOK(ecode5)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
-    } 
-    arg5 = static_cast< wxDouble >(val5);
-  }
-  if (obj5) {
-    ecode6 = SWIG_AsVal_double(obj5, &val6);
-    if (!SWIG_IsOK(ecode6)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
-    } 
-    arg6 = static_cast< wxDouble >(val6);
-  }
-  if (obj6) {
-    ecode7 = SWIG_AsVal_double(obj6, &val7);
-    if (!SWIG_IsOK(ecode7)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
-    } 
-    arg7 = static_cast< wxDouble >(val7);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26655,22 +26560,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Invert();
+    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26680,109 +26623,129 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (bool)(arg1)->IsIdentity();
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+    (char *) "self",(char *) "p", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->Translate(arg2,arg3);
+    ((wxGraphicsPath const *)arg1)->UnGetNativePath(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26792,42 +26755,36 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+    (char *) "self",(char *) "matrix", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Scale(arg2,arg3);
+    (arg1)->Transform((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26837,102 +26794,77 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "angle", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    (arg1)->Rotate(arg2);
+    result = ((wxGraphicsPath const *)arg1)->GetBox();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  int arg4 = (int) wxODDEVEN_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
-  int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  if (swig_obj[3]) {
+    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
   }
   {
-    (arg1)->TransformPoint(arg2,arg3);
+    result = (bool)((wxGraphicsPath const *)arg1)->Contains(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -26940,66 +26872,46 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2DDouble *arg2 = 0 ;
+  int arg3 = (int) wxODDEVEN_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
+  void *argp2 = 0 ;
   int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  int val3 ;
+  int ecode3 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
+  if (swig_obj[2]) {
+    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->TransformDistance(arg2,arg3);
+    result = (bool)((wxGraphicsPath const *)arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -27007,39 +26919,119 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  --argc;
+  if ((argc >= 2) && (argc <= 3)) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    if (argc > 2) {
+      {
+        {
+          int res = SWIG_AsVal_int(argv[2], NULL);
+          _v = SWIG_CheckState(res);
+        }
+      }
+      if (!_v) goto check_1;
+    }
+    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
+SWIGINTERN int NullGraphicsPen_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPen_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsFont_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsFont_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsMatrix_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsMatrix is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsMatrix_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsMatrix), SWIGTYPE_p_wxGraphicsMatrix,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsPath_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPath is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPath_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPath), SWIGTYPE_p_wxGraphicsPath,  0 );
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_delete_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -27199,7 +27191,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -27212,10 +27204,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(s
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -27526,7 +27518,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27601,10 +27593,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -27940,6 +27932,110 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsContext_ConcatTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_ConcatTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->ConcatTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->SetTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_GetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_GetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = ((wxGraphicsContext const *)arg1)->GetTransform();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -28237,7 +28333,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
@@ -28254,13 +28350,16 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(s
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->StrokePath((wxGraphicsPath const *)arg2);
+    (arg1)->StrokePath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -28273,8 +28372,8 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
-  int arg3 = (int) wxWINDING_RULE ;
+  wxGraphicsPath *arg2 = 0 ;
+  int arg3 = (int) wxODDEVEN_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
@@ -28294,9 +28393,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_FillPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -28307,7 +28409,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->FillPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->FillPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -28320,8 +28422,8 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
-  int arg3 = (int) wxWINDING_RULE ;
+  wxGraphicsPath *arg2 = 0 ;
+  int arg3 = (int) wxODDEVEN_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
@@ -28341,9 +28443,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -28354,7 +28459,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->DrawPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->DrawPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -28959,7 +29064,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(se
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   size_t arg2 ;
   wxPoint2D *arg3 = (wxPoint2D *) 0 ;
-  int arg4 = (int) wxWINDING_RULE ;
+  int arg4 = (int) wxODDEVEN_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   int val4 ;
@@ -29447,7 +29552,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -29460,10 +29565,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(
   }
   arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -29479,7 +29584,7 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -29554,10 +29659,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -38335,8 +38440,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"delete_GraphicsFont", (PyCFunction)_wrap_delete_GraphicsFont, METH_O, NULL},
         { (char *)"GraphicsFont_swigregister", GraphicsFont_swigregister, METH_VARARGS, NULL},
         { (char *)"GraphicsFont_swiginit", GraphicsFont_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
+        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_Clone", (PyCFunction)_wrap_GraphicsPath_Clone, METH_O, NULL},
         { (char *)"GraphicsPath_MoveToPoint", _wrap_GraphicsPath_MoveToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddLineToPoint", _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddCurveToPoint", _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS, NULL},
@@ -38356,21 +38474,6 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsPath_GetBox", (PyCFunction)_wrap_GraphicsPath_GetBox, METH_O, NULL},
         { (char *)"GraphicsPath_Contains", _wrap_GraphicsPath_Contains, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_swigregister", GraphicsPath_swigregister, METH_VARARGS, NULL},
-        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Clone", (PyCFunction)_wrap_GraphicsMatrix_Clone, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
-        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsContext", (PyCFunction)_wrap_delete_GraphicsContext, METH_O, NULL},
         { (char *)"GraphicsContext_Create", _wrap_GraphicsContext_Create, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_CreateFromNative", (PyCFunction) _wrap_GraphicsContext_CreateFromNative, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -38391,6 +38494,9 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_Translate", (PyCFunction) _wrap_GraphicsContext_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Scale", (PyCFunction) _wrap_GraphicsContext_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Rotate", (PyCFunction) _wrap_GraphicsContext_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ConcatTransform", (PyCFunction) _wrap_GraphicsContext_ConcatTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_SetTransform", (PyCFunction) _wrap_GraphicsContext_SetTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_GetTransform", (PyCFunction)_wrap_GraphicsContext_GetTransform, METH_O, NULL},
         { (char *)"GraphicsContext_SetPen", _wrap_GraphicsContext_SetPen, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetBrush", _wrap_GraphicsContext_SetBrush, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetFont", _wrap_GraphicsContext_SetFont, METH_VARARGS, NULL},
@@ -40691,6 +40797,8 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPen",NullGraphicsPen_get, NullGraphicsPen_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsBrush",NullGraphicsBrush_get, NullGraphicsBrush_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsFont",NullGraphicsFont_get, NullGraphicsFont_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsMatrix",NullGraphicsMatrix_get, NullGraphicsMatrix_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPath",NullGraphicsPath_get, NullGraphicsPath_set);
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_NORMAL",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_NORMAL)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_TRANSPARENT",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_SELECTED",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_SELECTED)));
index 592182271ca1f14c3293ffc0192aa5d8e855a244..4336192ba129a40929c4f594f777719e2b3f2bd7 100644 (file)
@@ -1435,6 +1435,49 @@ class FloatingPane(_windows.MiniFrame):
 
 _aui.FloatingPane_swigregister(FloatingPane)
 
+class TabArt(object):
+    """Proxy of C++ TabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _aui.delete_TabArt
+    __del__ = lambda self : None;
+    def DrawBackground(*args, **kwargs):
+        """DrawBackground(self, DC dc, Rect rect)"""
+        return _aui.TabArt_DrawBackground(*args, **kwargs)
+
+    def DrawTab(*args, **kwargs):
+        """
+        DrawTab(self, DC dc, Rect in_rect, String caption, bool active, Rect out_rect, 
+            int x_extent)
+        """
+        return _aui.TabArt_DrawTab(*args, **kwargs)
+
+    def SetNormalFont(*args, **kwargs):
+        """SetNormalFont(self, Font font)"""
+        return _aui.TabArt_SetNormalFont(*args, **kwargs)
+
+    def SetSelectedFont(*args, **kwargs):
+        """SetSelectedFont(self, Font font)"""
+        return _aui.TabArt_SetSelectedFont(*args, **kwargs)
+
+    def SetMeasuringFont(*args, **kwargs):
+        """SetMeasuringFont(self, Font font)"""
+        return _aui.TabArt_SetMeasuringFont(*args, **kwargs)
+
+_aui.TabArt_swigregister(TabArt)
+
+class DefaultTabArt(TabArt):
+    """Proxy of C++ DefaultTabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self) -> DefaultTabArt"""
+        _aui.DefaultTabArt_swiginit(self,_aui.new_DefaultTabArt(*args, **kwargs))
+    __swig_destroy__ = _aui.delete_DefaultTabArt
+    __del__ = lambda self : None;
+_aui.DefaultTabArt_swigregister(DefaultTabArt)
+
 class AuiNotebookEvent(_core.NotifyEvent):
     """Proxy of C++ AuiNotebookEvent class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -1488,6 +1531,7 @@ class AuiTabContainerButton(object):
     __repr__ = _swig_repr
     id = property(_aui.AuiTabContainerButton_id_get, _aui.AuiTabContainerButton_id_set)
     cur_state = property(_aui.AuiTabContainerButton_cur_state_get, _aui.AuiTabContainerButton_cur_state_set)
+    location = property(_aui.AuiTabContainerButton_location_get, _aui.AuiTabContainerButton_location_set)
     bitmap = property(_aui.AuiTabContainerButton_bitmap_get, _aui.AuiTabContainerButton_bitmap_set)
     rect = property(_aui.AuiTabContainerButton_rect_get, _aui.AuiTabContainerButton_rect_set)
 _aui.AuiTabContainerButton_swigregister(AuiTabContainerButton)
@@ -1501,6 +1545,14 @@ class AuiTabContainer(object):
         _aui.AuiTabContainer_swiginit(self,_aui.new_AuiTabContainer(*args, **kwargs))
     __swig_destroy__ = _aui.delete_AuiTabContainer
     __del__ = lambda self : None;
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiTabContainer_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiTabContainer_GetArtProvider(*args, **kwargs)
+
     def AddPage(*args, **kwargs):
         """AddPage(self, Window page, AuiNotebookPage info) -> bool"""
         return _aui.AuiTabContainer_AddPage(*args, **kwargs)
@@ -1577,7 +1629,7 @@ class AuiTabContainer(object):
         return _aui.AuiTabContainer_SetRect(*args, **kwargs)
 
     def AddButton(*args, **kwargs):
-        """AddButton(self, int id, Bitmap bmp)"""
+        """AddButton(self, int id, int location, Bitmap bmp)"""
         return _aui.AuiTabContainer_AddButton(*args, **kwargs)
 
     ActivePage = property(GetActivePage,SetActivePage,doc="See `GetActivePage` and `SetActivePage`") 
@@ -1659,6 +1711,14 @@ class AuiMultiNotebook(_core.Control):
         """GetPage(self, size_t page_idx) -> Window"""
         return _aui.AuiMultiNotebook_GetPage(*args, **kwargs)
 
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiMultiNotebook_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiMultiNotebook_GetArtProvider(*args, **kwargs)
+
     PageCount = property(GetPageCount,doc="See `GetPageCount`") 
     Selection = property(GetSelection,SetSelection,doc="See `GetSelection` and `SetSelection`") 
 _aui.AuiMultiNotebook_swigregister(AuiMultiNotebook)
@@ -1693,5 +1753,16 @@ class PyDockArt(DefaultDockArt):
     __repr__ = _swig_repr
 _aui.PyDockArt_swigregister(PyDockArt)
 
+class PyTabArt(DefaultTabArt):
+    """
+    This version of the `TabArt` class has been instrumented to be
+    subclassable in Python and to reflect all calls to the C++ base class
+    methods to the Python methods implemented in the derived class.
+    """
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+_aui.PyTabArt_swigregister(PyTabArt)
+
 
 
index a46115a997c76115af473c89123f3d44e161bdfe..b5850e49e781600a3db89cada3eb6b324d196f7b 100644 (file)
@@ -2547,149 +2547,152 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDC swig_types[81]
 #define SWIGTYPE_p_wxDateEvent swig_types[82]
 #define SWIGTYPE_p_wxDefaultDockArt swig_types[83]
-#define SWIGTYPE_p_wxDialog swig_types[84]
-#define SWIGTYPE_p_wxDirDialog swig_types[85]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[86]
-#define SWIGTYPE_p_wxDockArt swig_types[87]
-#define SWIGTYPE_p_wxDockInfo swig_types[88]
-#define SWIGTYPE_p_wxDockUIPart swig_types[89]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[90]
-#define SWIGTYPE_p_wxDuplexMode swig_types[91]
-#define SWIGTYPE_p_wxEraseEvent swig_types[92]
-#define SWIGTYPE_p_wxEvent swig_types[93]
-#define SWIGTYPE_p_wxEvtHandler swig_types[94]
-#define SWIGTYPE_p_wxFSFile swig_types[95]
-#define SWIGTYPE_p_wxFileDialog swig_types[96]
-#define SWIGTYPE_p_wxFileSystem swig_types[97]
-#define SWIGTYPE_p_wxFindDialogEvent swig_types[98]
-#define SWIGTYPE_p_wxFindReplaceData swig_types[99]
-#define SWIGTYPE_p_wxFindReplaceDialog swig_types[100]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[101]
-#define SWIGTYPE_p_wxFloatingPane swig_types[102]
-#define SWIGTYPE_p_wxFocusEvent swig_types[103]
-#define SWIGTYPE_p_wxFont swig_types[104]
-#define SWIGTYPE_p_wxFontData swig_types[105]
-#define SWIGTYPE_p_wxFontDialog swig_types[106]
-#define SWIGTYPE_p_wxFrame swig_types[107]
-#define SWIGTYPE_p_wxFrameManager swig_types[108]
-#define SWIGTYPE_p_wxFrameManagerEvent swig_types[109]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[110]
-#define SWIGTYPE_p_wxGIFHandler swig_types[111]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[112]
-#define SWIGTYPE_p_wxGridSizer swig_types[113]
-#define SWIGTYPE_p_wxICOHandler swig_types[114]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[115]
-#define SWIGTYPE_p_wxIdleEvent swig_types[116]
-#define SWIGTYPE_p_wxImage swig_types[117]
-#define SWIGTYPE_p_wxImageHandler swig_types[118]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[119]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[120]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[121]
-#define SWIGTYPE_p_wxKeyEvent swig_types[122]
-#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[123]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[124]
-#define SWIGTYPE_p_wxMDIChildFrame swig_types[125]
-#define SWIGTYPE_p_wxMDIClientWindow swig_types[126]
-#define SWIGTYPE_p_wxMDIParentFrame swig_types[127]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[128]
-#define SWIGTYPE_p_wxMenu swig_types[129]
-#define SWIGTYPE_p_wxMenuBar swig_types[130]
-#define SWIGTYPE_p_wxMenuEvent swig_types[131]
-#define SWIGTYPE_p_wxMenuItem swig_types[132]
-#define SWIGTYPE_p_wxMessageDialog swig_types[133]
-#define SWIGTYPE_p_wxMiniFrame swig_types[134]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[135]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[136]
-#define SWIGTYPE_p_wxMouseEvent swig_types[137]
-#define SWIGTYPE_p_wxMoveEvent swig_types[138]
-#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[139]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[140]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[141]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[142]
-#define SWIGTYPE_p_wxNumberEntryDialog swig_types[143]
-#define SWIGTYPE_p_wxObject swig_types[144]
-#define SWIGTYPE_p_wxPCXHandler swig_types[145]
-#define SWIGTYPE_p_wxPNGHandler swig_types[146]
-#define SWIGTYPE_p_wxPNMHandler swig_types[147]
-#define SWIGTYPE_p_wxPageSetupDialog swig_types[148]
-#define SWIGTYPE_p_wxPageSetupDialogData swig_types[149]
-#define SWIGTYPE_p_wxPaintEvent swig_types[150]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[151]
-#define SWIGTYPE_p_wxPaneButton swig_types[152]
-#define SWIGTYPE_p_wxPaneButtonArray swig_types[153]
-#define SWIGTYPE_p_wxPaneInfo swig_types[154]
-#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[155]
-#define SWIGTYPE_p_wxPanel swig_types[156]
-#define SWIGTYPE_p_wxPaperSize swig_types[157]
-#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[158]
-#define SWIGTYPE_p_wxPoint swig_types[159]
-#define SWIGTYPE_p_wxPopupWindow swig_types[160]
-#define SWIGTYPE_p_wxPreviewCanvas swig_types[161]
-#define SWIGTYPE_p_wxPreviewControlBar swig_types[162]
-#define SWIGTYPE_p_wxPreviewFrame swig_types[163]
-#define SWIGTYPE_p_wxPrintData swig_types[164]
-#define SWIGTYPE_p_wxPrintDialog swig_types[165]
-#define SWIGTYPE_p_wxPrintDialogData swig_types[166]
-#define SWIGTYPE_p_wxPrintPreview swig_types[167]
-#define SWIGTYPE_p_wxPrinter swig_types[168]
-#define SWIGTYPE_p_wxProgressDialog swig_types[169]
-#define SWIGTYPE_p_wxPyApp swig_types[170]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[171]
-#define SWIGTYPE_p_wxPyDockArt swig_types[172]
-#define SWIGTYPE_p_wxPyEvent swig_types[173]
-#define SWIGTYPE_p_wxPyHtmlListBox swig_types[174]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[175]
-#define SWIGTYPE_p_wxPyPanel swig_types[176]
-#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[177]
-#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[178]
-#define SWIGTYPE_p_wxPyPreviewFrame swig_types[179]
-#define SWIGTYPE_p_wxPyPrintPreview swig_types[180]
-#define SWIGTYPE_p_wxPyPrintout swig_types[181]
-#define SWIGTYPE_p_wxPyScrolledWindow swig_types[182]
-#define SWIGTYPE_p_wxPySizer swig_types[183]
-#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[184]
-#define SWIGTYPE_p_wxPyVListBox swig_types[185]
-#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[186]
-#define SWIGTYPE_p_wxPyValidator swig_types[187]
-#define SWIGTYPE_p_wxPyWindow swig_types[188]
-#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[189]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[190]
-#define SWIGTYPE_p_wxRect swig_types[191]
-#define SWIGTYPE_p_wxSashEvent swig_types[192]
-#define SWIGTYPE_p_wxSashLayoutWindow swig_types[193]
-#define SWIGTYPE_p_wxSashWindow swig_types[194]
-#define SWIGTYPE_p_wxScrollEvent swig_types[195]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[196]
-#define SWIGTYPE_p_wxScrolledWindow swig_types[197]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[198]
-#define SWIGTYPE_p_wxShowEvent swig_types[199]
-#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[200]
-#define SWIGTYPE_p_wxSize swig_types[201]
-#define SWIGTYPE_p_wxSizeEvent swig_types[202]
-#define SWIGTYPE_p_wxSizer swig_types[203]
-#define SWIGTYPE_p_wxSizerItem swig_types[204]
-#define SWIGTYPE_p_wxSplashScreen swig_types[205]
-#define SWIGTYPE_p_wxSplashScreenWindow swig_types[206]
-#define SWIGTYPE_p_wxSplitterEvent swig_types[207]
-#define SWIGTYPE_p_wxSplitterWindow swig_types[208]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[209]
-#define SWIGTYPE_p_wxStatusBar swig_types[210]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[211]
-#define SWIGTYPE_p_wxString swig_types[212]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[213]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[214]
-#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[215]
-#define SWIGTYPE_p_wxTextEntryDialog swig_types[216]
-#define SWIGTYPE_p_wxTipWindow swig_types[217]
-#define SWIGTYPE_p_wxTopLevelWindow swig_types[218]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[219]
-#define SWIGTYPE_p_wxValidator swig_types[220]
-#define SWIGTYPE_p_wxWindow swig_types[221]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[222]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[223]
-#define SWIGTYPE_p_wxXPMHandler swig_types[224]
-static swig_type_info *swig_types[226];
-static swig_module_info swig_module = {swig_types, 225, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDefaultTabArt swig_types[84]
+#define SWIGTYPE_p_wxDialog swig_types[85]
+#define SWIGTYPE_p_wxDirDialog swig_types[86]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[87]
+#define SWIGTYPE_p_wxDockArt swig_types[88]
+#define SWIGTYPE_p_wxDockInfo swig_types[89]
+#define SWIGTYPE_p_wxDockUIPart swig_types[90]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[91]
+#define SWIGTYPE_p_wxDuplexMode swig_types[92]
+#define SWIGTYPE_p_wxEraseEvent swig_types[93]
+#define SWIGTYPE_p_wxEvent swig_types[94]
+#define SWIGTYPE_p_wxEvtHandler swig_types[95]
+#define SWIGTYPE_p_wxFSFile swig_types[96]
+#define SWIGTYPE_p_wxFileDialog swig_types[97]
+#define SWIGTYPE_p_wxFileSystem swig_types[98]
+#define SWIGTYPE_p_wxFindDialogEvent swig_types[99]
+#define SWIGTYPE_p_wxFindReplaceData swig_types[100]
+#define SWIGTYPE_p_wxFindReplaceDialog swig_types[101]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[102]
+#define SWIGTYPE_p_wxFloatingPane swig_types[103]
+#define SWIGTYPE_p_wxFocusEvent swig_types[104]
+#define SWIGTYPE_p_wxFont swig_types[105]
+#define SWIGTYPE_p_wxFontData swig_types[106]
+#define SWIGTYPE_p_wxFontDialog swig_types[107]
+#define SWIGTYPE_p_wxFrame swig_types[108]
+#define SWIGTYPE_p_wxFrameManager swig_types[109]
+#define SWIGTYPE_p_wxFrameManagerEvent swig_types[110]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[111]
+#define SWIGTYPE_p_wxGIFHandler swig_types[112]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[113]
+#define SWIGTYPE_p_wxGridSizer swig_types[114]
+#define SWIGTYPE_p_wxICOHandler swig_types[115]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[116]
+#define SWIGTYPE_p_wxIdleEvent swig_types[117]
+#define SWIGTYPE_p_wxImage swig_types[118]
+#define SWIGTYPE_p_wxImageHandler swig_types[119]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[120]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[121]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[122]
+#define SWIGTYPE_p_wxKeyEvent swig_types[123]
+#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[124]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[125]
+#define SWIGTYPE_p_wxMDIChildFrame swig_types[126]
+#define SWIGTYPE_p_wxMDIClientWindow swig_types[127]
+#define SWIGTYPE_p_wxMDIParentFrame swig_types[128]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[129]
+#define SWIGTYPE_p_wxMenu swig_types[130]
+#define SWIGTYPE_p_wxMenuBar swig_types[131]
+#define SWIGTYPE_p_wxMenuEvent swig_types[132]
+#define SWIGTYPE_p_wxMenuItem swig_types[133]
+#define SWIGTYPE_p_wxMessageDialog swig_types[134]
+#define SWIGTYPE_p_wxMiniFrame swig_types[135]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[136]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[137]
+#define SWIGTYPE_p_wxMouseEvent swig_types[138]
+#define SWIGTYPE_p_wxMoveEvent swig_types[139]
+#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[140]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[141]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[142]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[143]
+#define SWIGTYPE_p_wxNumberEntryDialog swig_types[144]
+#define SWIGTYPE_p_wxObject swig_types[145]
+#define SWIGTYPE_p_wxPCXHandler swig_types[146]
+#define SWIGTYPE_p_wxPNGHandler swig_types[147]
+#define SWIGTYPE_p_wxPNMHandler swig_types[148]
+#define SWIGTYPE_p_wxPageSetupDialog swig_types[149]
+#define SWIGTYPE_p_wxPageSetupDialogData swig_types[150]
+#define SWIGTYPE_p_wxPaintEvent swig_types[151]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[152]
+#define SWIGTYPE_p_wxPaneButton swig_types[153]
+#define SWIGTYPE_p_wxPaneButtonArray swig_types[154]
+#define SWIGTYPE_p_wxPaneInfo swig_types[155]
+#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[156]
+#define SWIGTYPE_p_wxPanel swig_types[157]
+#define SWIGTYPE_p_wxPaperSize swig_types[158]
+#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[159]
+#define SWIGTYPE_p_wxPoint swig_types[160]
+#define SWIGTYPE_p_wxPopupWindow swig_types[161]
+#define SWIGTYPE_p_wxPreviewCanvas swig_types[162]
+#define SWIGTYPE_p_wxPreviewControlBar swig_types[163]
+#define SWIGTYPE_p_wxPreviewFrame swig_types[164]
+#define SWIGTYPE_p_wxPrintData swig_types[165]
+#define SWIGTYPE_p_wxPrintDialog swig_types[166]
+#define SWIGTYPE_p_wxPrintDialogData swig_types[167]
+#define SWIGTYPE_p_wxPrintPreview swig_types[168]
+#define SWIGTYPE_p_wxPrinter swig_types[169]
+#define SWIGTYPE_p_wxProgressDialog swig_types[170]
+#define SWIGTYPE_p_wxPyApp swig_types[171]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[172]
+#define SWIGTYPE_p_wxPyDockArt swig_types[173]
+#define SWIGTYPE_p_wxPyEvent swig_types[174]
+#define SWIGTYPE_p_wxPyHtmlListBox swig_types[175]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[176]
+#define SWIGTYPE_p_wxPyPanel swig_types[177]
+#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[178]
+#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[179]
+#define SWIGTYPE_p_wxPyPreviewFrame swig_types[180]
+#define SWIGTYPE_p_wxPyPrintPreview swig_types[181]
+#define SWIGTYPE_p_wxPyPrintout swig_types[182]
+#define SWIGTYPE_p_wxPyScrolledWindow swig_types[183]
+#define SWIGTYPE_p_wxPySizer swig_types[184]
+#define SWIGTYPE_p_wxPyTabArt swig_types[185]
+#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[186]
+#define SWIGTYPE_p_wxPyVListBox swig_types[187]
+#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[188]
+#define SWIGTYPE_p_wxPyValidator swig_types[189]
+#define SWIGTYPE_p_wxPyWindow swig_types[190]
+#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[191]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[192]
+#define SWIGTYPE_p_wxRect swig_types[193]
+#define SWIGTYPE_p_wxSashEvent swig_types[194]
+#define SWIGTYPE_p_wxSashLayoutWindow swig_types[195]
+#define SWIGTYPE_p_wxSashWindow swig_types[196]
+#define SWIGTYPE_p_wxScrollEvent swig_types[197]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[198]
+#define SWIGTYPE_p_wxScrolledWindow swig_types[199]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[200]
+#define SWIGTYPE_p_wxShowEvent swig_types[201]
+#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[202]
+#define SWIGTYPE_p_wxSize swig_types[203]
+#define SWIGTYPE_p_wxSizeEvent swig_types[204]
+#define SWIGTYPE_p_wxSizer swig_types[205]
+#define SWIGTYPE_p_wxSizerItem swig_types[206]
+#define SWIGTYPE_p_wxSplashScreen swig_types[207]
+#define SWIGTYPE_p_wxSplashScreenWindow swig_types[208]
+#define SWIGTYPE_p_wxSplitterEvent swig_types[209]
+#define SWIGTYPE_p_wxSplitterWindow swig_types[210]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[211]
+#define SWIGTYPE_p_wxStatusBar swig_types[212]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[213]
+#define SWIGTYPE_p_wxString swig_types[214]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[215]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[216]
+#define SWIGTYPE_p_wxTabArt swig_types[217]
+#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[218]
+#define SWIGTYPE_p_wxTextEntryDialog swig_types[219]
+#define SWIGTYPE_p_wxTipWindow swig_types[220]
+#define SWIGTYPE_p_wxTopLevelWindow swig_types[221]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[222]
+#define SWIGTYPE_p_wxValidator swig_types[223]
+#define SWIGTYPE_p_wxWindow swig_types[224]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[225]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[226]
+#define SWIGTYPE_p_wxXPMHandler swig_types[227]
+static swig_type_info *swig_types[229];
+static swig_module_info swig_module = {swig_types, 228, 0, 0, 0, 0};
 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
 
@@ -2900,7 +2903,7 @@ SWIG_From_size_t  (size_t value)
 }
 
 
-// A wxDocArt class that knows how to forward virtuals to Python methods  
+// A wxDocArt class that knows how to forward virtuals to Python methods
 class wxPyDockArt :  public wxDefaultDockArt
 {
     wxPyDockArt() : wxDefaultDockArt() {}
@@ -3062,6 +3065,88 @@ IMP_PYCALLBACK_COLOUR_INT(wxPyDockArt, wxDefaultDockArt, GetColour);
 IMP_PYCALLBACK__INTCOLOUR(wxPyDockArt, wxDefaultDockArt, SetColour);
 
 
+
+// A wxTabArt class that knows how to forward virtuals to Python methods
+class wxPyTabArt :  public wxDefaultTabArt
+{
+    wxPyTabArt() : wxDefaultTabArt() {}
+
+    virtual void DrawBackground( wxDC* dc,
+                                 const wxRect& rect )
+    {
+        bool found;
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawBackground"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OO)", odc, orect));
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawBackground(dc, rect);
+    }
+
+    virtual void DrawTab( wxDC* dc,
+                          const wxRect& in_rect,
+                          const wxString& caption,
+                          bool active,
+                          wxRect* out_rect,
+                          int* x_extent)
+    {
+        bool found;
+        const char* errmsg = "DrawTab should return a sequence containing (out_rect, x_extent)";
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawTab"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&in_rect, wxT("wxRect"), 0);
+            PyObject* otext = wx2PyString(caption);
+            PyObject* ro;
+            ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("(OOOi)", odc, orect, otext, (int)active));
+            if (ro) {
+                if (PySequence_Check(ro) && PyObject_Length(ro) == 2) {
+                    PyObject* o1 = PySequence_GetItem(ro, 0);
+                    PyObject* o2 = PySequence_GetItem(ro, 1);
+                    if (!wxRect_helper(o1, &out_rect)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else if (!PyInt_Check(o2)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else
+                        *x_extent = PyInt_AsLong(o2);
+                    
+                    Py_DECREF(o1);
+                    Py_DECREF(o2);
+                }
+                else {
+                    PyErr_SetString(PyExc_TypeError, errmsg);
+                }
+                Py_DECREF(ro);
+            }
+
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+            Py_DECREF(otext);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawTab(dc, in_rect, caption, active, out_rect, x_extent);
+    }
+
+
+    DEC_PYCALLBACK__FONT(SetNormalFont);
+    DEC_PYCALLBACK__FONT(SetSelectedFont);
+    DEC_PYCALLBACK__FONT(SetMeasuringFont);
+
+    PYPRIVATE;
+};
+
+
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetNormalFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetSelectedFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetMeasuringFont);
+
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -10900,6 +10985,354 @@ SWIGINTERN PyObject *FloatingPane_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_delete_TabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_TabArt" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:TabArt_DrawBackground",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawBackground" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawBackground" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawBackground(arg2,(wxRect const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawTab(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  wxString *arg4 = 0 ;
+  bool arg5 ;
+  wxRect *arg6 = (wxRect *) 0 ;
+  int *arg7 = (int *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  bool temp4 = false ;
+  bool val5 ;
+  int ecode5 = 0 ;
+  void *argp6 = 0 ;
+  int res6 = 0 ;
+  void *argp7 = 0 ;
+  int res7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "in_rect",(char *) "caption",(char *) "active",(char *) "out_rect",(char *) "x_extent", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:TabArt_DrawTab",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawTab" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawTab" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    arg4 = wxString_in_helper(obj3);
+    if (arg4 == NULL) SWIG_fail;
+    temp4 = true;
+  }
+  ecode5 = SWIG_AsVal_bool(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "TabArt_DrawTab" "', expected argument " "5"" of type '" "bool""'");
+  } 
+  arg5 = static_cast< bool >(val5);
+  res6 = SWIG_ConvertPtr(obj5, &argp6,SWIGTYPE_p_wxRect, 0 |  0 );
+  if (!SWIG_IsOK(res6)) {
+    SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "TabArt_DrawTab" "', expected argument " "6"" of type '" "wxRect *""'"); 
+  }
+  arg6 = reinterpret_cast< wxRect * >(argp6);
+  res7 = SWIG_ConvertPtr(obj6, &argp7,SWIGTYPE_p_int, 0 |  0 );
+  if (!SWIG_IsOK(res7)) {
+    SWIG_exception_fail(SWIG_ArgError(res7), "in method '" "TabArt_DrawTab" "', expected argument " "7"" of type '" "int *""'"); 
+  }
+  arg7 = reinterpret_cast< int * >(argp7);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawTab(arg2,(wxRect const &)*arg3,(wxString const &)*arg4,arg5,arg6,arg7);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetNormalFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetNormalFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetNormalFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetNormalFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetSelectedFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetSelectedFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetSelectedFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetSelectedFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetMeasuringFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetMeasuringFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetMeasuringFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *TabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_new_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_DefaultTabArt",0,0,0)) SWIG_fail;
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDefaultTabArt *)new wxDefaultTabArt();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *arg1 = (wxDefaultTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DefaultTabArt" "', expected argument " "1"" of type '" "wxDefaultTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDefaultTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DefaultTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDefaultTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DefaultTabArt_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_AuiNotebookEvent(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxEventType arg1 = (wxEventType) wxEVT_NULL ;
@@ -11587,6 +12020,59 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"AuiTabContainerButton_location_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  if (arg1) (arg1)->location = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_get" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  result = (int) ((arg1)->location);
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainerButton_bitmap_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
@@ -11746,6 +12232,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainer_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiTabContainer_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainer_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainer_AddPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
@@ -12546,21 +13098,25 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
   int arg2 ;
-  wxBitmap *arg3 = 0 ;
+  int arg3 ;
+  wxBitmap *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   int val2 ;
   int ecode2 = 0 ;
-  void *argp3 = 0 ;
-  int res3 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  void *argp4 = 0 ;
+  int res4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "id",(char *) "bmp", NULL 
+    (char *) "self",(char *) "id",(char *) "location",(char *) "bmp", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_AddButton" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
@@ -12571,17 +13127,22 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainer_AddButton" "', expected argument " "2"" of type '" "int""'");
   } 
   arg2 = static_cast< int >(val2);
-  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxBitmap,  0  | 0);
-  if (!SWIG_IsOK(res3)) {
-    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxBitmap,  0  | 0);
+  if (!SWIG_IsOK(res4)) {
+    SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  if (!argp3) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  if (!argp4) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  arg3 = reinterpret_cast< wxBitmap * >(argp3);
+  arg4 = reinterpret_cast< wxBitmap * >(argp4);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->AddButton(arg2,(wxBitmap const &)*arg3);
+    (arg1)->AddButton(arg2,arg3,(wxBitmap const &)*arg4);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -13309,6 +13870,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiMultiNotebook_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *AuiMultiNotebook_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -13327,6 +13954,13 @@ SWIGINTERN PyObject *PyDockArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyOb
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *PyTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxPyTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
 static PyMethodDef SwigMethods[] = {
         { (char *)"new_PaneInfo", (PyCFunction)_wrap_new_PaneInfo, METH_NOARGS, NULL},
         { (char *)"delete_PaneInfo", (PyCFunction)_wrap_delete_PaneInfo, METH_O, NULL},
@@ -13563,6 +14197,17 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"FloatingPane_SetPaneWindow", (PyCFunction) _wrap_FloatingPane_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"FloatingPane_swigregister", FloatingPane_swigregister, METH_VARARGS, NULL},
         { (char *)"FloatingPane_swiginit", FloatingPane_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_TabArt", (PyCFunction)_wrap_delete_TabArt, METH_O, NULL},
+        { (char *)"TabArt_DrawBackground", (PyCFunction) _wrap_TabArt_DrawBackground, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_DrawTab", (PyCFunction) _wrap_TabArt_DrawTab, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetNormalFont", (PyCFunction) _wrap_TabArt_SetNormalFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetSelectedFont", (PyCFunction) _wrap_TabArt_SetSelectedFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetMeasuringFont", (PyCFunction) _wrap_TabArt_SetMeasuringFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_swigregister", TabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DefaultTabArt", (PyCFunction)_wrap_new_DefaultTabArt, METH_NOARGS, NULL},
+        { (char *)"delete_DefaultTabArt", (PyCFunction)_wrap_delete_DefaultTabArt, METH_O, NULL},
+        { (char *)"DefaultTabArt_swigregister", DefaultTabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"DefaultTabArt_swiginit", DefaultTabArt_swiginit, METH_VARARGS, NULL},
         { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetSelection, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetOldSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetOldSelection, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13589,6 +14234,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_id_get", (PyCFunction)_wrap_AuiTabContainerButton_id_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_cur_state_set", _wrap_AuiTabContainerButton_cur_state_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_cur_state_get", (PyCFunction)_wrap_AuiTabContainerButton_cur_state_get, METH_O, NULL},
+        { (char *)"AuiTabContainerButton_location_set", _wrap_AuiTabContainerButton_location_set, METH_VARARGS, NULL},
+        { (char *)"AuiTabContainerButton_location_get", (PyCFunction)_wrap_AuiTabContainerButton_location_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_bitmap_set", _wrap_AuiTabContainerButton_bitmap_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_bitmap_get", (PyCFunction)_wrap_AuiTabContainerButton_bitmap_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_rect_set", _wrap_AuiTabContainerButton_rect_set, METH_VARARGS, NULL},
@@ -13596,6 +14243,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_swigregister", AuiTabContainerButton_swigregister, METH_VARARGS, NULL},
         { (char *)"new_AuiTabContainer", (PyCFunction)_wrap_new_AuiTabContainer, METH_NOARGS, NULL},
         { (char *)"delete_AuiTabContainer", (PyCFunction)_wrap_delete_AuiTabContainer, METH_O, NULL},
+        { (char *)"AuiTabContainer_SetArtProvider", (PyCFunction) _wrap_AuiTabContainer_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiTabContainer_GetArtProvider", (PyCFunction)_wrap_AuiTabContainer_GetArtProvider, METH_O, NULL},
         { (char *)"AuiTabContainer_AddPage", (PyCFunction) _wrap_AuiTabContainer_AddPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_InsertPage", (PyCFunction) _wrap_AuiTabContainer_InsertPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_RemovePage", (PyCFunction) _wrap_AuiTabContainer_RemovePage, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13632,9 +14281,12 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiMultiNotebook_GetSelection", (PyCFunction)_wrap_AuiMultiNotebook_GetSelection, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPageCount", (PyCFunction)_wrap_AuiMultiNotebook_GetPageCount, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPage", (PyCFunction) _wrap_AuiMultiNotebook_GetPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_SetArtProvider", (PyCFunction) _wrap_AuiMultiNotebook_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_GetArtProvider", (PyCFunction)_wrap_AuiMultiNotebook_GetArtProvider, METH_O, NULL},
         { (char *)"AuiMultiNotebook_swigregister", AuiMultiNotebook_swigregister, METH_VARARGS, NULL},
         { (char *)"AuiMultiNotebook_swiginit", AuiMultiNotebook_swiginit, METH_VARARGS, NULL},
         { (char *)"PyDockArt_swigregister", PyDockArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"PyTabArt_swigregister", PyTabArt_swigregister, METH_VARARGS, NULL},
         { NULL, NULL, 0, NULL }
 };
 
@@ -14841,9 +15493,18 @@ static void *_p_wxPyDockArtTo_p_wxDockArt(void *x) {
 static void *_p_wxPyDockArtTo_p_wxDefaultDockArt(void *x) {
     return (void *)((wxDefaultDockArt *)  ((wxPyDockArt *) x));
 }
+static void *_p_wxPyTabArtTo_p_wxDefaultTabArt(void *x) {
+    return (void *)((wxDefaultTabArt *)  ((wxPyTabArt *) x));
+}
+static void *_p_wxDefaultTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *)  ((wxDefaultTabArt *) x));
+}
+static void *_p_wxPyTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *) (wxDefaultTabArt *) ((wxPyTabArt *) x));
+}
 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_int = {"_p_int", "int *|wxEventType *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxAuiTabContainerButton = {"_p_p_wxAuiTabContainerButton", "wxAuiTabContainerButton **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxWindow = {"_p_p_wxWindow", "wxWindow **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxSplashScreen = {"_p_p_wxSplashScreen", 0, 0, 0, 0, 0};
@@ -14923,6 +15584,7 @@ static swig_type_info _swigt__p_wxControl = {"_p_wxControl", "wxControl *", 0, 0
 static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDefaultDockArt = {"_p_wxDefaultDockArt", "wxDefaultDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDefaultTabArt = {"_p_wxDefaultTabArt", "wxDefaultTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockArt = {"_p_wxDockArt", "wxDockArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockInfo = {"_p_wxDockInfo", "wxDockInfo *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockUIPart = {"_p_wxDockUIPart", "wxDockUIPart *", 0, 0, (void*)0, 0};
@@ -15059,11 +15721,13 @@ static swig_type_info _swigt__p_wxPaneInfoPtrArray = {"_p_wxPaneInfoPtrArray", "
 static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPoint = {"_p_wxPoint", "wxPoint *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyDockArt = {"_p_wxPyDockArt", "wxPyDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPyTabArt = {"_p_wxPyTabArt", "wxPyTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRect = {"_p_wxRect", "wxRect *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSize = {"_p_wxSize", "wxSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", "wxSizer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", "wxSizerItem *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxString = {"_p_wxString", "wxString *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxTabArt = {"_p_wxTabArt", "wxTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxTopLevelWindow = {"_p_wxTopLevelWindow", "wxTopLevelWindow *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0};
 
@@ -15152,6 +15816,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDC,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDefaultDockArt,
+  &_swigt__p_wxDefaultTabArt,
   &_swigt__p_wxDialog,
   &_swigt__p_wxDirDialog,
   &_swigt__p_wxDisplayChangedEvent,
@@ -15252,6 +15917,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyPrintout,
   &_swigt__p_wxPyScrolledWindow,
   &_swigt__p_wxPySizer,
+  &_swigt__p_wxPyTabArt,
   &_swigt__p_wxPyTaskBarIcon,
   &_swigt__p_wxPyVListBox,
   &_swigt__p_wxPyVScrolledWindow,
@@ -15283,6 +15949,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxString,
   &_swigt__p_wxSysColourChangedEvent,
   &_swigt__p_wxTIFFHandler,
+  &_swigt__p_wxTabArt,
   &_swigt__p_wxTaskBarIconEvent,
   &_swigt__p_wxTextEntryDialog,
   &_swigt__p_wxTipWindow,
@@ -15377,6 +16044,7 @@ static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWit
 static swig_cast_info _swigc__p_wxControl[] = {  {&_swigt__p_wxControl, 0, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxControl, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDefaultDockArt[] = {  {&_swigt__p_wxDefaultDockArt, 0, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDefaultDockArt, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDefaultTabArt[] = {  {&_swigt__p_wxDefaultTabArt, 0, 0, 0},  {&_swigt__p_wxPyTabArt, _p_wxPyTabArtTo_p_wxDefaultTabArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockArt[] = {  {&_swigt__p_wxDockArt, 0, 0, 0},  {&_swigt__p_wxDefaultDockArt, _p_wxDefaultDockArtTo_p_wxDockArt, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDockArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockInfo[] = {  {&_swigt__p_wxDockInfo, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockUIPart[] = {  {&_swigt__p_wxDockUIPart, 0, 0, 0},{0, 0, 0, 0}};
@@ -15513,11 +16181,13 @@ static swig_cast_info _swigc__p_wxPaneInfoPtrArray[] = {  {&_swigt__p_wxPaneInfo
 static swig_cast_info _swigc__p_wxPaperSize[] = {  {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPoint[] = {  {&_swigt__p_wxPoint, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyDockArt[] = {  {&_swigt__p_wxPyDockArt, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyTabArt[] = {  {&_swigt__p_wxPyTabArt, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRect[] = {  {&_swigt__p_wxRect, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSize[] = {  {&_swigt__p_wxSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizer[] = {  {&_swigt__p_wxSizer, 0, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxSizer, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizerItem[] = {  {&_swigt__p_wxSizerItem, 0, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxSizerItem, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxString[] = {  {&_swigt__p_wxString, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTabArt[] = {  {&_swigt__p_wxTabArt, 0, 0, 0},  {&_swigt__p_wxDefaultTabArt, _p_wxDefaultTabArtTo_p_wxTabArt, 0, 0},  {&_swigt__p_wxPyTabArt, _p_wxPyTabArtTo_p_wxTabArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxTopLevelWindow[] = {  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, 0, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxTopLevelWindow, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxWindow[] = {  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPanel, _p_wxPyPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPanel, _p_wxPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxStatusBar, _p_wxStatusBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSashLayoutWindow, _p_wxSashLayoutWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxScrolledWindow, _p_wxScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, _p_wxTopLevelWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplashScreenWindow, _p_wxSplashScreenWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplitterWindow, _p_wxSplitterWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSashWindow, _p_wxSashWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIClientWindow, _p_wxMDIClientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyScrolledWindow, _p_wxPyScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxWindow, 0, 0, 0},  {&_swigt__p_wxPopupWindow, _p_wxPopupWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPopupTransientWindow, _p_wxPyPopupTransientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTipWindow, _p_wxTipWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVScrolledWindow, _p_wxPyVScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyWindow, _p_wxPyWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewCanvas, _p_wxPreviewCanvasTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyHtmlListBox, _p_wxPyHtmlListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVListBox, _p_wxPyVListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewControlBar, _p_wxPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewControlBar, _p_wxPyPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxWindow, 0, 0},{0, 0, 0, 0}};
 
@@ -15606,6 +16276,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDC,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDefaultDockArt,
+  _swigc__p_wxDefaultTabArt,
   _swigc__p_wxDialog,
   _swigc__p_wxDirDialog,
   _swigc__p_wxDisplayChangedEvent,
@@ -15706,6 +16377,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyPrintout,
   _swigc__p_wxPyScrolledWindow,
   _swigc__p_wxPySizer,
+  _swigc__p_wxPyTabArt,
   _swigc__p_wxPyTaskBarIcon,
   _swigc__p_wxPyVListBox,
   _swigc__p_wxPyVScrolledWindow,
@@ -15737,6 +16409,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxString,
   _swigc__p_wxSysColourChangedEvent,
   _swigc__p_wxTIFFHandler,
+  _swigc__p_wxTabArt,
   _swigc__p_wxTaskBarIconEvent,
   _swigc__p_wxTextEntryDialog,
   _swigc__p_wxTipWindow,
index 3134b9c7c6f9e50f5334ece80055633100be81ea..258f4b14a4377465c3c1e28754871c460ae6287e 100644 (file)
@@ -440,7 +440,26 @@ class GridCellBoolEditor(GridCellEditor):
         _grid.GridCellBoolEditor_swiginit(self,_grid.new_GridCellBoolEditor(*args, **kwargs))
         self._setOORInfo(self)
 
+    def UseStringValues(*args, **kwargs):
+        """UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+        return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+    UseStringValues = staticmethod(UseStringValues)
+    def IsTrueValue(*args, **kwargs):
+        """IsTrueValue(String value) -> bool"""
+        return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
+
+    IsTrueValue = staticmethod(IsTrueValue)
 _grid.GridCellBoolEditor_swigregister(GridCellBoolEditor)
+OneString = cvar.OneString
+
+def GridCellBoolEditor_UseStringValues(*args, **kwargs):
+  """GridCellBoolEditor_UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+  return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+def GridCellBoolEditor_IsTrueValue(*args, **kwargs):
+  """GridCellBoolEditor_IsTrueValue(String value) -> bool"""
+  return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
 
 class GridCellChoiceEditor(GridCellEditor):
     """Proxy of C++ GridCellChoiceEditor class"""
index 2ed7a959ce859bbab5134d37b914fa40c92af92c..577bf1f4efecb572ec3aa781b48b9f75eeae8a1a 100644 (file)
@@ -3482,6 +3482,7 @@ IMP_PYCALLBACK__(wxPyGridCellEditor, wxGridCellEditor, Destroy);
 IMP_PYCALLBACK_STRING__constpure(wxPyGridCellEditor, wxGridCellEditor, GetValue);
 
 
+ static const wxString wxPyOneString(_T("1")); 
 SWIGINTERN void wxGridCellAttr__setOORInfo(wxGridCellAttr *self,PyObject *_self){
             if (!self->GetClientObject())
                 self->SetClientObject(new wxPyOORClientData(_self));
@@ -5700,6 +5701,26 @@ SWIGINTERN PyObject *GridCellFloatEditor_swiginit(PyObject *SWIGUNUSEDPARM(self)
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN int OneString_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable OneString is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *OneString_get(void) {
+  PyObject *pyobj = 0;
+  
+  {
+#if wxUSE_UNICODE
+    pyobj = PyUnicode_FromWideChar((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#else
+    pyobj = PyString_FromStringAndSize((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#endif
+  }
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_new_GridCellBoolEditor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGridCellBoolEditor *result = 0 ;
@@ -5718,6 +5739,103 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_UseStringValues(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString const &arg1_defvalue = wxPyOneString ;
+  wxString *arg1 = (wxString *) &arg1_defvalue ;
+  wxString const &arg2_defvalue = wxPyEmptyString ;
+  wxString *arg2 = (wxString *) &arg2_defvalue ;
+  bool temp1 = false ;
+  bool temp2 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "valueTrue",(char *) "valueFalse", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:GridCellBoolEditor_UseStringValues",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (obj0) {
+    {
+      arg1 = wxString_in_helper(obj0);
+      if (arg1 == NULL) SWIG_fail;
+      temp1 = true;
+    }
+  }
+  if (obj1) {
+    {
+      arg2 = wxString_in_helper(obj1);
+      if (arg2 == NULL) SWIG_fail;
+      temp2 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxGridCellBoolEditor::UseStringValues((wxString const &)*arg1,(wxString const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_IsTrueValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString *arg1 = 0 ;
+  bool result;
+  bool temp1 = false ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "value", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GridCellBoolEditor_IsTrueValue",kwnames,&obj0)) SWIG_fail;
+  {
+    arg1 = wxString_in_helper(obj0);
+    if (arg1 == NULL) SWIG_fail;
+    temp1 = true;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)wxGridCellBoolEditor::IsTrueValue((wxString const &)*arg1);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *GridCellBoolEditor_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -20576,6 +20694,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GridCellFloatEditor_swigregister", GridCellFloatEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellFloatEditor_swiginit", GridCellFloatEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellBoolEditor", (PyCFunction)_wrap_new_GridCellBoolEditor, METH_NOARGS, NULL},
+        { (char *)"GridCellBoolEditor_UseStringValues", (PyCFunction) _wrap_GridCellBoolEditor_UseStringValues, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GridCellBoolEditor_IsTrueValue", (PyCFunction) _wrap_GridCellBoolEditor_IsTrueValue, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GridCellBoolEditor_swigregister", GridCellBoolEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellBoolEditor_swiginit", GridCellBoolEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellChoiceEditor", (PyCFunction) _wrap_new_GridCellChoiceEditor, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -23387,6 +23507,7 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "GRID_MIN_ROW_HEIGHT",SWIG_From_int(static_cast< int >(wxGRID_MIN_ROW_HEIGHT)));
   SWIG_Python_SetConstant(d, "GRID_MIN_COL_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_MIN_COL_WIDTH)));
   SWIG_Python_SetConstant(d, "GRID_DEFAULT_SCROLLBAR_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_DEFAULT_SCROLLBAR_WIDTH)));
+  SWIG_addvarlink(SWIG_globals(),(char*)"OneString",OneString_get, OneString_set);
   SWIG_Python_SetConstant(d, "GridCellAttr_Any",SWIG_From_int(static_cast< int >(wxGridCellAttr::Any)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Default",SWIG_From_int(static_cast< int >(wxGridCellAttr::Default)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Cell",SWIG_From_int(static_cast< int >(wxGridCellAttr::Cell)));
index 7e797a6bf02512bcd415ac84b140046186a1b235..78bb508be712172eb4e542c4fa66143c619c1506 100644 (file)
@@ -4990,6 +4990,112 @@ class GraphicsFont(GraphicsObject):
     __del__ = lambda self : None;
 _gdi_.GraphicsFont_swigregister(GraphicsFont)
 
+class GraphicsMatrix(GraphicsObject):
+    """Proxy of C++ GraphicsMatrix class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
+    __del__ = lambda self : None;
+    def Concat(*args, **kwargs):
+        """
+        Concat(self, GraphicsMatrix t)
+
+        concatenates the matrix
+        """
+        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
+
+    def Copy(*args, **kwargs):
+        """
+        Copy(self, GraphicsMatrix t)
+
+        Copy the passed in matrix to this one.
+        """
+        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
+
+    def Set(*args, **kwargs):
+        """
+        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
+            Double tx=0.0, Double ty=0.0)
+
+        sets the matrix to the respective values
+        """
+        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
+
+    def Invert(*args, **kwargs):
+        """
+        Invert(self)
+
+        makes this the inverse matrix
+        """
+        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
+
+    def IsEqual(*args, **kwargs):
+        """
+        IsEqual(self, GraphicsMatrix t) -> bool
+
+        returns true if the elements of the transformation matrix are equal
+        """
+        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
+
+    def IsIdentity(*args, **kwargs):
+        """
+        IsIdentity(self) -> bool
+
+        return true if this is the identity matrix
+        """
+        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
+
+    def Translate(*args, **kwargs):
+        """
+        Translate(self, Double dx, Double dy)
+
+        add the translation to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
+
+    def Scale(*args, **kwargs):
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        add the scale to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
+
+    def Rotate(*args, **kwargs):
+        """
+        Rotate(self, Double angle)
+
+        add the rotation to this matrix (radians)
+        """
+        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
+
+    def TransformPoint(*args, **kwargs):
+        """
+        TransformPoint(self, x, y) --> (x, y)
+
+        applies that matrix to the point
+        """
+        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
+
+    def TransformDistance(*args, **kwargs):
+        """
+        TransformDistance(self, dx, dy) --> (dx, dy)
+
+        applies the matrix except for translations
+        """
+        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
+
+    def GetNativeMatrix(*args, **kwargs):
+        """
+        GetNativeMatrix(self) -> void
+
+        returns the native representation
+        """
+        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
+
+_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
+
 class GraphicsPath(GraphicsObject):
     """Proxy of C++ GraphicsPath class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -4997,10 +5103,6 @@ class GraphicsPath(GraphicsObject):
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsPath"""
-        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
-
     def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
@@ -5157,120 +5259,6 @@ class GraphicsPath(GraphicsObject):
         return _gdi_.GraphicsPath_Contains(*args)
 
 _gdi_.GraphicsPath_swigregister(GraphicsPath)
-cvar = _gdi_.cvar
-NullGraphicsPen = cvar.NullGraphicsPen
-NullGraphicsBrush = cvar.NullGraphicsBrush
-NullGraphicsFont = cvar.NullGraphicsFont
-
-class GraphicsMatrix(GraphicsObject):
-    """Proxy of C++ GraphicsMatrix class"""
-    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
-    def __init__(self): raise AttributeError, "No constructor defined"
-    __repr__ = _swig_repr
-    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
-    __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsMatrix"""
-        return _gdi_.GraphicsMatrix_Clone(*args, **kwargs)
-
-    def Concat(*args, **kwargs):
-        """
-        Concat(self, GraphicsMatrix t)
-
-        concatenates the matrix
-        """
-        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
-
-    def Copy(*args, **kwargs):
-        """
-        Copy(self, GraphicsMatrix t)
-
-        copies the passed in matrix
-        """
-        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
-
-    def Set(*args, **kwargs):
-        """
-        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
-            Double tx=0.0, Double ty=0.0)
-
-        sets the matrix to the respective values
-        """
-        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
-
-    def Invert(*args, **kwargs):
-        """
-        Invert(self)
-
-        makes this the inverse matrix
-        """
-        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
-
-    def IsEqual(*args, **kwargs):
-        """
-        IsEqual(self, GraphicsMatrix t) -> bool
-
-        returns true if the elements of the transformation matrix are equal
-        """
-        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
-
-    def IsIdentity(*args, **kwargs):
-        """
-        IsIdentity(self) -> bool
-
-        return true if this is the identity matrix
-        """
-        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
-
-    def Translate(*args, **kwargs):
-        """
-        Translate(self, Double dx, Double dy)
-
-        add the translation to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
-
-    def Scale(*args, **kwargs):
-        """
-        Scale(self, Double xScale, Double yScale)
-
-        add the scale to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
-
-    def Rotate(*args, **kwargs):
-        """
-        Rotate(self, Double angle)
-
-        add the rotation to this matrix (radians)
-        """
-        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
-
-    def TransformPoint(*args, **kwargs):
-        """
-        TransformPoint(self, x, y) --> (x, y)
-
-        applies that matrix to the point
-        """
-        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
-
-    def TransformDistance(*args, **kwargs):
-        """
-        TransformDistance(self, dx, dy) --> (dx, dy)
-
-        applies the matrix except for translations
-        """
-        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
-
-    def GetNativeMatrix(*args, **kwargs):
-        """
-        GetNativeMatrix(self) -> void
-
-        returns the native representation
-        """
-        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
-
-_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
 
 class GraphicsContext(GraphicsObject):
     """Proxy of C++ GraphicsContext class"""
@@ -5426,6 +5414,30 @@ class GraphicsContext(GraphicsObject):
         """
         return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
+    def ConcatTransform(*args, **kwargs):
+        """
+        ConcatTransform(self, GraphicsMatrix matrix)
+
+        concatenates this transform with the current transform of this context
+        """
+        return _gdi_.GraphicsContext_ConcatTransform(*args, **kwargs)
+
+    def SetTransform(*args, **kwargs):
+        """
+        SetTransform(self, GraphicsMatrix matrix)
+
+        sets the transform of this context
+        """
+        return _gdi_.GraphicsContext_SetTransform(*args, **kwargs)
+
+    def GetTransform(*args, **kwargs):
+        """
+        GetTransform(self) -> GraphicsMatrix
+
+        gets the matrix of this context
+        """
+        return _gdi_.GraphicsContext_GetTransform(*args, **kwargs)
+
     def SetPen(*args):
         """
         SetPen(self, GraphicsPen pen)
@@ -5570,6 +5582,12 @@ class GraphicsContext(GraphicsObject):
         return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
 
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
+cvar = _gdi_.cvar
+NullGraphicsPen = cvar.NullGraphicsPen
+NullGraphicsBrush = cvar.NullGraphicsBrush
+NullGraphicsFont = cvar.NullGraphicsFont
+NullGraphicsMatrix = cvar.NullGraphicsMatrix
+NullGraphicsPath = cvar.NullGraphicsPath
 
 def GraphicsContext_Create(*args):
   """
index 6dde3efa0da6d52943700887b9d53adbc9159878..8e27843809d9724dc5f858188f31642663378ef1 100644 (file)
@@ -3632,8 +3632,6 @@ public :
     }
     virtual ~wxGraphicsPath() {}
 
-    virtual wxGraphicsPath *Clone() const { return NULL; }
-
     void MoveToPoint( wxDouble, wxDouble ) {}
     void MoveToPoint( const wxPoint2DDouble& ) {}
     void AddLineToPoint( wxDouble, wxDouble ) {}
@@ -3663,6 +3661,7 @@ public :
     bool Contains( wxDouble , wxDouble , int ) { return false; }
     bool Contains( const wxPoint2DDouble& , int ) { return false; }
 };
+wxGraphicsPath wxNullGraphicsPath;
 
 
 class wxGraphicsMatrix : public wxGraphicsObject
@@ -3673,7 +3672,6 @@ public :
                         "wx.GraphicsMatrix is not available on this platform.");
     }
     virtual ~wxGraphicsMatrix() {}
-    virtual wxGraphicsMatrix *Clone() const { return NULL; }
     virtual void Concat( const wxGraphicsMatrix * ) {}
     virtual void Copy( const wxGraphicsMatrix * )  {}
     virtual void Set(wxDouble , wxDouble , wxDouble , wxDouble ,
@@ -3688,7 +3686,7 @@ public :
     virtual void TransformDistance( wxDouble *, wxDouble * ) {}
     virtual void * GetNativeMatrix() const { return NULL; }
 };
-
+wxGraphicsMatrix wxNullGraphicsMatrix;
 
 
 class wxGraphicsContext : public wxGraphicsObject
@@ -3847,6 +3845,9 @@ public:
 
 #endif
 
+SWIGINTERN void wxGraphicsMatrix_Copy(wxGraphicsMatrix *self,wxGraphicsMatrix const &t){
+            *self = t;
+        }
 SWIGINTERN PyObject *wxGraphicsContext_GetTextExtent(wxGraphicsContext *self,wxString const &text){
             wxDouble width = 0.0,
                      height = 0.0;
@@ -25359,62 +25360,20 @@ SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
-SWIGINTERN int NullGraphicsPen_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsPen_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsFont_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsFont_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
     delete arg1;
     
@@ -25427,62 +25386,75 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    (arg1)->Concat((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->MoveToPoint(arg2,arg3);
+    wxGraphicsMatrix_Copy(arg1,(wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25492,26 +25464,90 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 = (wxDouble) 1.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxDouble arg5 = (wxDouble) 1.0 ;
+  wxDouble arg6 = (wxDouble) 0.0 ;
+  wxDouble arg7 = (wxDouble) 0.0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  double val7 ;
+  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
+  }
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
+  }
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
+  }
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
   {
-    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25521,55 +25557,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
-    (arg1)->AddLineToPoint(arg2,arg3);
+    (arg1)->Invert();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25579,116 +25582,112 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (bool)(arg1)->IsIdentity();
+    if (PyErr_Occurred()) SWIG_fail;
   }
-  
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+  };
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
-  } 
-  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->Translate(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25698,38 +25697,42 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
-  wxPoint2D *arg3 = 0 ;
-  wxPoint2D *arg4 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
-  wxPoint2D temp3 ;
-  wxPoint2D temp4 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+  };
   
-  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
-  }
-  {
-    arg3 = &temp3;
-    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
-  }
-  {
-    arg4 = &temp4;
-    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    (arg1)->Scale(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25739,52 +25742,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[8];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
-  --argc;
-  if (argc == 4) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "path", NULL 
+    (char *) "self",(char *) "angle", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
   {
-    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    (arg1)->Rotate(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25794,119 +25778,229 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    (arg1)->CloseSubpath();
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    (arg1)->TransformPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    (arg1)->TransformDistance(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  void *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetCurrentPoint();
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  bool val7 ;
-  int ecode7 = 0 ;
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
-  } 
-  arg7 = static_cast< bool >(val7);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->MoveToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25916,58 +26010,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxPoint2D *arg2 = 0 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   wxPoint2D temp2 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  bool val6 ;
-  int ecode6 = 0 ;
   
-  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
     arg2 = &temp2;
     if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
-  } 
-  arg6 = static_cast< bool >(val6);
   {
-    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25977,79 +26039,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[8];
+  PyObject *argv[4];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
   --argc;
-  if (argc == 6) {
-    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
+  if (argc == 2) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
   }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
+  if (argc == 3) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    (arg1)->AddLineToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26059,60 +26097,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26122,61 +26126,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  {
-    (arg1)->AddCircle(arg2,arg3,arg4);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -26184,6 +26153,7 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26196,49 +26166,47 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
-  };
+  double val7 ;
+  int ecode7 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
   if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
   } 
   arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
   if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
   if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
+  } 
+  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26248,132 +26216,38 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  {
+    arg3 = &temp3;
+    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg4 = &temp4;
+    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26383,57 +26257,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 4) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *arg2 = (void *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int res2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "p", NULL 
+    (char *) "self",(char *) "path", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->UnGetNativePath(arg2);
+    (arg1)->AddPath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26443,33 +26315,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "matrix", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Transform(arg2);
+    (arg1)->CloseSubpath();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26479,10 +26340,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxRect2DDouble result;
+  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -26491,179 +26352,225 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), P
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetBox();
+    result = (arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  int arg4 = (int) wxWINDING_RULE ;
-  bool result;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
+  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  int val4 ;
+  double val4 ;
   int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  bool val7 ;
+  int ecode7 = 0 ;
   
-  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  if (swig_obj[3]) {
-    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
-  }
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
+  } 
+  arg7 = static_cast< bool >(val7);
   {
-    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2DDouble *arg2 = 0 ;
-  int arg3 = (int) wxWINDING_RULE ;
-  bool result;
+  wxPoint2D *arg2 = 0 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  int val3 ;
+  wxPoint2D temp2 ;
+  double val3 ;
   int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  bool val6 ;
+  int ecode6 = 0 ;
   
-  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
-  if (swig_obj[2]) {
-    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
-    } 
-    arg3 = static_cast< int >(val3);
-  }
   {
-    result = (bool)(arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
+  } 
+  arg6 = static_cast< bool >(val6);
   {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[5];
+  PyObject *argv[8];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
   --argc;
-  if ((argc >= 2) && (argc <= 3)) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    if (argc > 2) {
-      {
-        {
-          int res = SWIG_AsVal_int(argv[2], NULL);
-          _v = SWIG_CheckState(res);
-        }
-      }
-      if (!_v) goto check_1;
-    }
-    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
   }
-check_1:
-  
-  if ((argc >= 3) && (argc <= 4)) {
-    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *obj;
-  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
-  return SWIG_Py_Void();
-}
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    delete arg1;
-    
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26673,59 +26580,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
-  
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Clone" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (wxGraphicsMatrix *)((wxGraphicsMatrix const *)arg1)->Clone();
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26735,33 +26643,51 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
   {
-    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddCircle(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26771,15 +26697,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 = (wxDouble) 1.0 ;
-  wxDouble arg3 = (wxDouble) 0.0 ;
-  wxDouble arg4 = (wxDouble) 0.0 ;
-  wxDouble arg5 = (wxDouble) 1.0 ;
-  wxDouble arg6 = (wxDouble) 0.0 ;
-  wxDouble arg7 = (wxDouble) 0.0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26792,69 +26717,49 @@ SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), Py
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_double(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
-    } 
-    arg2 = static_cast< wxDouble >(val2);
-  }
-  if (obj2) {
-    ecode3 = SWIG_AsVal_double(obj2, &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
-    } 
-    arg3 = static_cast< wxDouble >(val3);
-  }
-  if (obj3) {
-    ecode4 = SWIG_AsVal_double(obj3, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
-    } 
-    arg4 = static_cast< wxDouble >(val4);
-  }
-  if (obj4) {
-    ecode5 = SWIG_AsVal_double(obj4, &val5);
-    if (!SWIG_IsOK(ecode5)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
-    } 
-    arg5 = static_cast< wxDouble >(val5);
-  }
-  if (obj5) {
-    ecode6 = SWIG_AsVal_double(obj5, &val6);
-    if (!SWIG_IsOK(ecode6)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
-    } 
-    arg6 = static_cast< wxDouble >(val6);
-  }
-  if (obj6) {
-    ecode7 = SWIG_AsVal_double(obj6, &val7);
-    if (!SWIG_IsOK(ecode7)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
-    } 
-    arg7 = static_cast< wxDouble >(val7);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26864,22 +26769,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Invert();
+    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26889,109 +26832,129 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (bool)(arg1)->IsIdentity();
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+    (char *) "self",(char *) "p", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->Translate(arg2,arg3);
+    (arg1)->UnGetNativePath(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27001,42 +26964,36 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+    (char *) "self",(char *) "matrix", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Scale(arg2,arg3);
+    (arg1)->Transform((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27046,102 +27003,77 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "angle", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    (arg1)->Rotate(arg2);
+    result = (arg1)->GetBox();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  int arg4 = (int) wxWINDING_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
-  int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  if (swig_obj[3]) {
+    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
   }
   {
-    (arg1)->TransformPoint(arg2,arg3);
+    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -27149,66 +27081,46 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2DDouble *arg2 = 0 ;
+  int arg3 = (int) wxWINDING_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
+  void *argp2 = 0 ;
   int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  int val3 ;
+  int ecode3 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
+  if (swig_obj[2]) {
+    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->TransformDistance(arg2,arg3);
+    result = (bool)(arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -27216,39 +27128,119 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  --argc;
+  if ((argc >= 2) && (argc <= 3)) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    if (argc > 2) {
+      {
+        {
+          int res = SWIG_AsVal_int(argv[2], NULL);
+          _v = SWIG_CheckState(res);
+        }
+      }
+      if (!_v) goto check_1;
+    }
+    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
+SWIGINTERN int NullGraphicsPen_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPen_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsFont_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsFont_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsMatrix_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsMatrix is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsMatrix_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsMatrix), SWIGTYPE_p_wxGraphicsMatrix,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsPath_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPath is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPath_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPath), SWIGTYPE_p_wxGraphicsPath,  0 );
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_delete_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -27408,7 +27400,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -27421,10 +27413,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(s
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -27735,7 +27727,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27810,10 +27802,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -28149,6 +28141,110 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsContext_ConcatTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_ConcatTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->ConcatTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->SetTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_GetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_GetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = ((wxGraphicsContext const *)arg1)->GetTransform();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -28446,7 +28542,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
@@ -28463,13 +28559,16 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(s
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->StrokePath((wxGraphicsPath const *)arg2);
+    (arg1)->StrokePath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -28482,7 +28581,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   int arg3 = (int) wxWINDING_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -28503,9 +28602,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_FillPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -28516,7 +28618,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->FillPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->FillPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -28529,7 +28631,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   int arg3 = (int) wxWINDING_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -28550,9 +28652,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -28563,7 +28668,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->DrawPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->DrawPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -29656,7 +29761,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -29669,10 +29774,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(
   }
   arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -29688,7 +29793,7 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -29763,10 +29868,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -38551,8 +38656,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"delete_GraphicsFont", (PyCFunction)_wrap_delete_GraphicsFont, METH_O, NULL},
         { (char *)"GraphicsFont_swigregister", GraphicsFont_swigregister, METH_VARARGS, NULL},
         { (char *)"GraphicsFont_swiginit", GraphicsFont_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
+        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_Clone", (PyCFunction)_wrap_GraphicsPath_Clone, METH_O, NULL},
         { (char *)"GraphicsPath_MoveToPoint", _wrap_GraphicsPath_MoveToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddLineToPoint", _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddCurveToPoint", _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS, NULL},
@@ -38572,21 +38690,6 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsPath_GetBox", (PyCFunction)_wrap_GraphicsPath_GetBox, METH_O, NULL},
         { (char *)"GraphicsPath_Contains", _wrap_GraphicsPath_Contains, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_swigregister", GraphicsPath_swigregister, METH_VARARGS, NULL},
-        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Clone", (PyCFunction)_wrap_GraphicsMatrix_Clone, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
-        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsContext", (PyCFunction)_wrap_delete_GraphicsContext, METH_O, NULL},
         { (char *)"GraphicsContext_Create", _wrap_GraphicsContext_Create, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_CreateFromNative", (PyCFunction) _wrap_GraphicsContext_CreateFromNative, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -38607,6 +38710,9 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_Translate", (PyCFunction) _wrap_GraphicsContext_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Scale", (PyCFunction) _wrap_GraphicsContext_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Rotate", (PyCFunction) _wrap_GraphicsContext_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ConcatTransform", (PyCFunction) _wrap_GraphicsContext_ConcatTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_SetTransform", (PyCFunction) _wrap_GraphicsContext_SetTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_GetTransform", (PyCFunction)_wrap_GraphicsContext_GetTransform, METH_O, NULL},
         { (char *)"GraphicsContext_SetPen", _wrap_GraphicsContext_SetPen, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetBrush", _wrap_GraphicsContext_SetBrush, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetFont", _wrap_GraphicsContext_SetFont, METH_VARARGS, NULL},
@@ -40907,6 +41013,8 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPen",NullGraphicsPen_get, NullGraphicsPen_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsBrush",NullGraphicsBrush_get, NullGraphicsBrush_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsFont",NullGraphicsFont_get, NullGraphicsFont_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsMatrix",NullGraphicsMatrix_get, NullGraphicsMatrix_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPath",NullGraphicsPath_get, NullGraphicsPath_set);
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_NORMAL",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_NORMAL)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_TRANSPARENT",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_SELECTED",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_SELECTED)));
index 592182271ca1f14c3293ffc0192aa5d8e855a244..5d560cbf1239dfae6ed2cbbbc27f364a499867b5 100644 (file)
@@ -1435,6 +1435,49 @@ class FloatingPane(_windows.MiniFrame):
 
 _aui.FloatingPane_swigregister(FloatingPane)
 
+class TabArt(object):
+    """Proxy of C++ TabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _aui.delete_TabArt
+    __del__ = lambda self : None;
+    def DrawBackground(*args, **kwargs):
+        """DrawBackground(self, DC dc, Rect rect)"""
+        return _aui.TabArt_DrawBackground(*args, **kwargs)
+
+    def DrawTab(*args, **kwargs):
+        """
+        DrawTab(self, DC dc, Rect in_rect, String caption, bool active, Rect out_rect, 
+            int x_extent)
+        """
+        return _aui.TabArt_DrawTab(*args, **kwargs)
+
+    def SetNormalFont(*args, **kwargs):
+        """SetNormalFont(self, Font font)"""
+        return _aui.TabArt_SetNormalFont(*args, **kwargs)
+
+    def SetSelectedFont(*args, **kwargs):
+        """SetSelectedFont(self, Font font)"""
+        return _aui.TabArt_SetSelectedFont(*args, **kwargs)
+
+    def SetMeasuringFont(*args, **kwargs):
+        """SetMeasuringFont(self, Font font)"""
+        return _aui.TabArt_SetMeasuringFont(*args, **kwargs)
+
+_aui.TabArt_swigregister(TabArt)
+
+class DefaultTabArt(TabArt):
+    """Proxy of C++ DefaultTabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self) -> DefaultTabArt"""
+        _aui.DefaultTabArt_swiginit(self,_aui.new_DefaultTabArt(*args, **kwargs))
+    __swig_destroy__ = _aui.delete_DefaultTabArt
+    __del__ = lambda self : None;
+_aui.DefaultTabArt_swigregister(DefaultTabArt)
+
 class AuiNotebookEvent(_core.NotifyEvent):
     """Proxy of C++ AuiNotebookEvent class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -1488,6 +1531,7 @@ class AuiTabContainerButton(object):
     __repr__ = _swig_repr
     id = property(_aui.AuiTabContainerButton_id_get, _aui.AuiTabContainerButton_id_set)
     cur_state = property(_aui.AuiTabContainerButton_cur_state_get, _aui.AuiTabContainerButton_cur_state_set)
+    location = property(_aui.AuiTabContainerButton_location_get, _aui.AuiTabContainerButton_location_set)
     bitmap = property(_aui.AuiTabContainerButton_bitmap_get, _aui.AuiTabContainerButton_bitmap_set)
     rect = property(_aui.AuiTabContainerButton_rect_get, _aui.AuiTabContainerButton_rect_set)
 _aui.AuiTabContainerButton_swigregister(AuiTabContainerButton)
@@ -1501,6 +1545,14 @@ class AuiTabContainer(object):
         _aui.AuiTabContainer_swiginit(self,_aui.new_AuiTabContainer(*args, **kwargs))
     __swig_destroy__ = _aui.delete_AuiTabContainer
     __del__ = lambda self : None;
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiTabContainer_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiTabContainer_GetArtProvider(*args, **kwargs)
+
     def AddPage(*args, **kwargs):
         """AddPage(self, Window page, AuiNotebookPage info) -> bool"""
         return _aui.AuiTabContainer_AddPage(*args, **kwargs)
@@ -1577,7 +1629,7 @@ class AuiTabContainer(object):
         return _aui.AuiTabContainer_SetRect(*args, **kwargs)
 
     def AddButton(*args, **kwargs):
-        """AddButton(self, int id, Bitmap bmp)"""
+        """AddButton(self, int id, int location, Bitmap bmp)"""
         return _aui.AuiTabContainer_AddButton(*args, **kwargs)
 
     ActivePage = property(GetActivePage,SetActivePage,doc="See `GetActivePage` and `SetActivePage`") 
@@ -1659,6 +1711,14 @@ class AuiMultiNotebook(_core.Control):
         """GetPage(self, size_t page_idx) -> Window"""
         return _aui.AuiMultiNotebook_GetPage(*args, **kwargs)
 
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiMultiNotebook_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiMultiNotebook_GetArtProvider(*args, **kwargs)
+
     PageCount = property(GetPageCount,doc="See `GetPageCount`") 
     Selection = property(GetSelection,SetSelection,doc="See `GetSelection` and `SetSelection`") 
 _aui.AuiMultiNotebook_swigregister(AuiMultiNotebook)
@@ -1693,5 +1753,16 @@ class PyDockArt(DefaultDockArt):
     __repr__ = _swig_repr
 _aui.PyDockArt_swigregister(PyDockArt)
 
+class PyTabArt(TabArt):
+    """
+    This version of the `TabArt` class has been instrumented to be
+    subclassable in Python and to reflect all calls to the C++ base class
+    methods to the Python methods implemented in the derived class.
+    """
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+_aui.PyTabArt_swigregister(PyTabArt)
+
 
 
index 1fcf370f69b5b10532c00a3a34c8012da0b06f78..7353b42c82948883aa1eeaa6b8b6ca175fba7908 100644 (file)
@@ -2547,149 +2547,152 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDC swig_types[81]
 #define SWIGTYPE_p_wxDateEvent swig_types[82]
 #define SWIGTYPE_p_wxDefaultDockArt swig_types[83]
-#define SWIGTYPE_p_wxDialog swig_types[84]
-#define SWIGTYPE_p_wxDirDialog swig_types[85]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[86]
-#define SWIGTYPE_p_wxDockArt swig_types[87]
-#define SWIGTYPE_p_wxDockInfo swig_types[88]
-#define SWIGTYPE_p_wxDockUIPart swig_types[89]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[90]
-#define SWIGTYPE_p_wxDuplexMode swig_types[91]
-#define SWIGTYPE_p_wxEraseEvent swig_types[92]
-#define SWIGTYPE_p_wxEvent swig_types[93]
-#define SWIGTYPE_p_wxEvtHandler swig_types[94]
-#define SWIGTYPE_p_wxFSFile swig_types[95]
-#define SWIGTYPE_p_wxFileDialog swig_types[96]
-#define SWIGTYPE_p_wxFileSystem swig_types[97]
-#define SWIGTYPE_p_wxFindDialogEvent swig_types[98]
-#define SWIGTYPE_p_wxFindReplaceData swig_types[99]
-#define SWIGTYPE_p_wxFindReplaceDialog swig_types[100]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[101]
-#define SWIGTYPE_p_wxFloatingPane swig_types[102]
-#define SWIGTYPE_p_wxFocusEvent swig_types[103]
-#define SWIGTYPE_p_wxFont swig_types[104]
-#define SWIGTYPE_p_wxFontData swig_types[105]
-#define SWIGTYPE_p_wxFontDialog swig_types[106]
-#define SWIGTYPE_p_wxFrame swig_types[107]
-#define SWIGTYPE_p_wxFrameManager swig_types[108]
-#define SWIGTYPE_p_wxFrameManagerEvent swig_types[109]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[110]
-#define SWIGTYPE_p_wxGIFHandler swig_types[111]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[112]
-#define SWIGTYPE_p_wxGridSizer swig_types[113]
-#define SWIGTYPE_p_wxICOHandler swig_types[114]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[115]
-#define SWIGTYPE_p_wxIdleEvent swig_types[116]
-#define SWIGTYPE_p_wxImage swig_types[117]
-#define SWIGTYPE_p_wxImageHandler swig_types[118]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[119]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[120]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[121]
-#define SWIGTYPE_p_wxKeyEvent swig_types[122]
-#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[123]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[124]
-#define SWIGTYPE_p_wxMDIChildFrame swig_types[125]
-#define SWIGTYPE_p_wxMDIClientWindow swig_types[126]
-#define SWIGTYPE_p_wxMDIParentFrame swig_types[127]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[128]
-#define SWIGTYPE_p_wxMenu swig_types[129]
-#define SWIGTYPE_p_wxMenuBar swig_types[130]
-#define SWIGTYPE_p_wxMenuEvent swig_types[131]
-#define SWIGTYPE_p_wxMenuItem swig_types[132]
-#define SWIGTYPE_p_wxMessageDialog swig_types[133]
-#define SWIGTYPE_p_wxMiniFrame swig_types[134]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[135]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[136]
-#define SWIGTYPE_p_wxMouseEvent swig_types[137]
-#define SWIGTYPE_p_wxMoveEvent swig_types[138]
-#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[139]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[140]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[141]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[142]
-#define SWIGTYPE_p_wxNumberEntryDialog swig_types[143]
-#define SWIGTYPE_p_wxObject swig_types[144]
-#define SWIGTYPE_p_wxPCXHandler swig_types[145]
-#define SWIGTYPE_p_wxPNGHandler swig_types[146]
-#define SWIGTYPE_p_wxPNMHandler swig_types[147]
-#define SWIGTYPE_p_wxPageSetupDialog swig_types[148]
-#define SWIGTYPE_p_wxPageSetupDialogData swig_types[149]
-#define SWIGTYPE_p_wxPaintEvent swig_types[150]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[151]
-#define SWIGTYPE_p_wxPaneButton swig_types[152]
-#define SWIGTYPE_p_wxPaneButtonArray swig_types[153]
-#define SWIGTYPE_p_wxPaneInfo swig_types[154]
-#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[155]
-#define SWIGTYPE_p_wxPanel swig_types[156]
-#define SWIGTYPE_p_wxPaperSize swig_types[157]
-#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[158]
-#define SWIGTYPE_p_wxPoint swig_types[159]
-#define SWIGTYPE_p_wxPopupWindow swig_types[160]
-#define SWIGTYPE_p_wxPreviewCanvas swig_types[161]
-#define SWIGTYPE_p_wxPreviewControlBar swig_types[162]
-#define SWIGTYPE_p_wxPreviewFrame swig_types[163]
-#define SWIGTYPE_p_wxPrintData swig_types[164]
-#define SWIGTYPE_p_wxPrintDialog swig_types[165]
-#define SWIGTYPE_p_wxPrintDialogData swig_types[166]
-#define SWIGTYPE_p_wxPrintPreview swig_types[167]
-#define SWIGTYPE_p_wxPrinter swig_types[168]
-#define SWIGTYPE_p_wxProgressDialog swig_types[169]
-#define SWIGTYPE_p_wxPyApp swig_types[170]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[171]
-#define SWIGTYPE_p_wxPyDockArt swig_types[172]
-#define SWIGTYPE_p_wxPyEvent swig_types[173]
-#define SWIGTYPE_p_wxPyHtmlListBox swig_types[174]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[175]
-#define SWIGTYPE_p_wxPyPanel swig_types[176]
-#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[177]
-#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[178]
-#define SWIGTYPE_p_wxPyPreviewFrame swig_types[179]
-#define SWIGTYPE_p_wxPyPrintPreview swig_types[180]
-#define SWIGTYPE_p_wxPyPrintout swig_types[181]
-#define SWIGTYPE_p_wxPyScrolledWindow swig_types[182]
-#define SWIGTYPE_p_wxPySizer swig_types[183]
-#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[184]
-#define SWIGTYPE_p_wxPyVListBox swig_types[185]
-#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[186]
-#define SWIGTYPE_p_wxPyValidator swig_types[187]
-#define SWIGTYPE_p_wxPyWindow swig_types[188]
-#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[189]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[190]
-#define SWIGTYPE_p_wxRect swig_types[191]
-#define SWIGTYPE_p_wxSashEvent swig_types[192]
-#define SWIGTYPE_p_wxSashLayoutWindow swig_types[193]
-#define SWIGTYPE_p_wxSashWindow swig_types[194]
-#define SWIGTYPE_p_wxScrollEvent swig_types[195]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[196]
-#define SWIGTYPE_p_wxScrolledWindow swig_types[197]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[198]
-#define SWIGTYPE_p_wxShowEvent swig_types[199]
-#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[200]
-#define SWIGTYPE_p_wxSize swig_types[201]
-#define SWIGTYPE_p_wxSizeEvent swig_types[202]
-#define SWIGTYPE_p_wxSizer swig_types[203]
-#define SWIGTYPE_p_wxSizerItem swig_types[204]
-#define SWIGTYPE_p_wxSplashScreen swig_types[205]
-#define SWIGTYPE_p_wxSplashScreenWindow swig_types[206]
-#define SWIGTYPE_p_wxSplitterEvent swig_types[207]
-#define SWIGTYPE_p_wxSplitterWindow swig_types[208]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[209]
-#define SWIGTYPE_p_wxStatusBar swig_types[210]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[211]
-#define SWIGTYPE_p_wxString swig_types[212]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[213]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[214]
-#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[215]
-#define SWIGTYPE_p_wxTextEntryDialog swig_types[216]
-#define SWIGTYPE_p_wxTipWindow swig_types[217]
-#define SWIGTYPE_p_wxTopLevelWindow swig_types[218]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[219]
-#define SWIGTYPE_p_wxValidator swig_types[220]
-#define SWIGTYPE_p_wxWindow swig_types[221]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[222]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[223]
-#define SWIGTYPE_p_wxXPMHandler swig_types[224]
-static swig_type_info *swig_types[226];
-static swig_module_info swig_module = {swig_types, 225, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDefaultTabArt swig_types[84]
+#define SWIGTYPE_p_wxDialog swig_types[85]
+#define SWIGTYPE_p_wxDirDialog swig_types[86]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[87]
+#define SWIGTYPE_p_wxDockArt swig_types[88]
+#define SWIGTYPE_p_wxDockInfo swig_types[89]
+#define SWIGTYPE_p_wxDockUIPart swig_types[90]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[91]
+#define SWIGTYPE_p_wxDuplexMode swig_types[92]
+#define SWIGTYPE_p_wxEraseEvent swig_types[93]
+#define SWIGTYPE_p_wxEvent swig_types[94]
+#define SWIGTYPE_p_wxEvtHandler swig_types[95]
+#define SWIGTYPE_p_wxFSFile swig_types[96]
+#define SWIGTYPE_p_wxFileDialog swig_types[97]
+#define SWIGTYPE_p_wxFileSystem swig_types[98]
+#define SWIGTYPE_p_wxFindDialogEvent swig_types[99]
+#define SWIGTYPE_p_wxFindReplaceData swig_types[100]
+#define SWIGTYPE_p_wxFindReplaceDialog swig_types[101]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[102]
+#define SWIGTYPE_p_wxFloatingPane swig_types[103]
+#define SWIGTYPE_p_wxFocusEvent swig_types[104]
+#define SWIGTYPE_p_wxFont swig_types[105]
+#define SWIGTYPE_p_wxFontData swig_types[106]
+#define SWIGTYPE_p_wxFontDialog swig_types[107]
+#define SWIGTYPE_p_wxFrame swig_types[108]
+#define SWIGTYPE_p_wxFrameManager swig_types[109]
+#define SWIGTYPE_p_wxFrameManagerEvent swig_types[110]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[111]
+#define SWIGTYPE_p_wxGIFHandler swig_types[112]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[113]
+#define SWIGTYPE_p_wxGridSizer swig_types[114]
+#define SWIGTYPE_p_wxICOHandler swig_types[115]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[116]
+#define SWIGTYPE_p_wxIdleEvent swig_types[117]
+#define SWIGTYPE_p_wxImage swig_types[118]
+#define SWIGTYPE_p_wxImageHandler swig_types[119]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[120]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[121]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[122]
+#define SWIGTYPE_p_wxKeyEvent swig_types[123]
+#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[124]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[125]
+#define SWIGTYPE_p_wxMDIChildFrame swig_types[126]
+#define SWIGTYPE_p_wxMDIClientWindow swig_types[127]
+#define SWIGTYPE_p_wxMDIParentFrame swig_types[128]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[129]
+#define SWIGTYPE_p_wxMenu swig_types[130]
+#define SWIGTYPE_p_wxMenuBar swig_types[131]
+#define SWIGTYPE_p_wxMenuEvent swig_types[132]
+#define SWIGTYPE_p_wxMenuItem swig_types[133]
+#define SWIGTYPE_p_wxMessageDialog swig_types[134]
+#define SWIGTYPE_p_wxMiniFrame swig_types[135]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[136]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[137]
+#define SWIGTYPE_p_wxMouseEvent swig_types[138]
+#define SWIGTYPE_p_wxMoveEvent swig_types[139]
+#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[140]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[141]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[142]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[143]
+#define SWIGTYPE_p_wxNumberEntryDialog swig_types[144]
+#define SWIGTYPE_p_wxObject swig_types[145]
+#define SWIGTYPE_p_wxPCXHandler swig_types[146]
+#define SWIGTYPE_p_wxPNGHandler swig_types[147]
+#define SWIGTYPE_p_wxPNMHandler swig_types[148]
+#define SWIGTYPE_p_wxPageSetupDialog swig_types[149]
+#define SWIGTYPE_p_wxPageSetupDialogData swig_types[150]
+#define SWIGTYPE_p_wxPaintEvent swig_types[151]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[152]
+#define SWIGTYPE_p_wxPaneButton swig_types[153]
+#define SWIGTYPE_p_wxPaneButtonArray swig_types[154]
+#define SWIGTYPE_p_wxPaneInfo swig_types[155]
+#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[156]
+#define SWIGTYPE_p_wxPanel swig_types[157]
+#define SWIGTYPE_p_wxPaperSize swig_types[158]
+#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[159]
+#define SWIGTYPE_p_wxPoint swig_types[160]
+#define SWIGTYPE_p_wxPopupWindow swig_types[161]
+#define SWIGTYPE_p_wxPreviewCanvas swig_types[162]
+#define SWIGTYPE_p_wxPreviewControlBar swig_types[163]
+#define SWIGTYPE_p_wxPreviewFrame swig_types[164]
+#define SWIGTYPE_p_wxPrintData swig_types[165]
+#define SWIGTYPE_p_wxPrintDialog swig_types[166]
+#define SWIGTYPE_p_wxPrintDialogData swig_types[167]
+#define SWIGTYPE_p_wxPrintPreview swig_types[168]
+#define SWIGTYPE_p_wxPrinter swig_types[169]
+#define SWIGTYPE_p_wxProgressDialog swig_types[170]
+#define SWIGTYPE_p_wxPyApp swig_types[171]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[172]
+#define SWIGTYPE_p_wxPyDockArt swig_types[173]
+#define SWIGTYPE_p_wxPyEvent swig_types[174]
+#define SWIGTYPE_p_wxPyHtmlListBox swig_types[175]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[176]
+#define SWIGTYPE_p_wxPyPanel swig_types[177]
+#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[178]
+#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[179]
+#define SWIGTYPE_p_wxPyPreviewFrame swig_types[180]
+#define SWIGTYPE_p_wxPyPrintPreview swig_types[181]
+#define SWIGTYPE_p_wxPyPrintout swig_types[182]
+#define SWIGTYPE_p_wxPyScrolledWindow swig_types[183]
+#define SWIGTYPE_p_wxPySizer swig_types[184]
+#define SWIGTYPE_p_wxPyTabArt swig_types[185]
+#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[186]
+#define SWIGTYPE_p_wxPyVListBox swig_types[187]
+#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[188]
+#define SWIGTYPE_p_wxPyValidator swig_types[189]
+#define SWIGTYPE_p_wxPyWindow swig_types[190]
+#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[191]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[192]
+#define SWIGTYPE_p_wxRect swig_types[193]
+#define SWIGTYPE_p_wxSashEvent swig_types[194]
+#define SWIGTYPE_p_wxSashLayoutWindow swig_types[195]
+#define SWIGTYPE_p_wxSashWindow swig_types[196]
+#define SWIGTYPE_p_wxScrollEvent swig_types[197]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[198]
+#define SWIGTYPE_p_wxScrolledWindow swig_types[199]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[200]
+#define SWIGTYPE_p_wxShowEvent swig_types[201]
+#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[202]
+#define SWIGTYPE_p_wxSize swig_types[203]
+#define SWIGTYPE_p_wxSizeEvent swig_types[204]
+#define SWIGTYPE_p_wxSizer swig_types[205]
+#define SWIGTYPE_p_wxSizerItem swig_types[206]
+#define SWIGTYPE_p_wxSplashScreen swig_types[207]
+#define SWIGTYPE_p_wxSplashScreenWindow swig_types[208]
+#define SWIGTYPE_p_wxSplitterEvent swig_types[209]
+#define SWIGTYPE_p_wxSplitterWindow swig_types[210]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[211]
+#define SWIGTYPE_p_wxStatusBar swig_types[212]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[213]
+#define SWIGTYPE_p_wxString swig_types[214]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[215]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[216]
+#define SWIGTYPE_p_wxTabArt swig_types[217]
+#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[218]
+#define SWIGTYPE_p_wxTextEntryDialog swig_types[219]
+#define SWIGTYPE_p_wxTipWindow swig_types[220]
+#define SWIGTYPE_p_wxTopLevelWindow swig_types[221]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[222]
+#define SWIGTYPE_p_wxValidator swig_types[223]
+#define SWIGTYPE_p_wxWindow swig_types[224]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[225]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[226]
+#define SWIGTYPE_p_wxXPMHandler swig_types[227]
+static swig_type_info *swig_types[229];
+static swig_module_info swig_module = {swig_types, 228, 0, 0, 0, 0};
 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
 
@@ -2900,7 +2903,7 @@ SWIG_From_size_t  (size_t value)
 }
 
 
-// A wxDocArt class that knows how to forward virtuals to Python methods  
+// A wxDocArt class that knows how to forward virtuals to Python methods
 class wxPyDockArt :  public wxDefaultDockArt
 {
     wxPyDockArt() : wxDefaultDockArt() {}
@@ -3062,6 +3065,88 @@ IMP_PYCALLBACK_COLOUR_INT(wxPyDockArt, wxDefaultDockArt, GetColour);
 IMP_PYCALLBACK__INTCOLOUR(wxPyDockArt, wxDefaultDockArt, SetColour);
 
 
+
+// A wxTabArt class that knows how to forward virtuals to Python methods
+class wxPyTabArt :  public wxDefaultTabArt
+{
+    wxPyTabArt() : wxDefaultTabArt() {}
+
+    virtual void DrawBackground( wxDC* dc,
+                                 const wxRect& rect )
+    {
+        bool found;
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawBackground"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OO)", odc, orect));
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawBackground(dc, rect);
+    }
+
+    virtual void DrawTab( wxDC* dc,
+                          const wxRect& in_rect,
+                          const wxString& caption,
+                          bool active,
+                          wxRect* out_rect,
+                          int* x_extent)
+    {
+        bool found;
+        const char* errmsg = "DrawTab should return a sequence containing (out_rect, x_extent)";
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawTab"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&in_rect, wxT("wxRect"), 0);
+            PyObject* otext = wx2PyString(caption);
+            PyObject* ro;
+            ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("(OOOi)", odc, orect, otext, (int)active));
+            if (ro) {
+                if (PySequence_Check(ro) && PyObject_Length(ro) == 2) {
+                    PyObject* o1 = PySequence_GetItem(ro, 0);
+                    PyObject* o2 = PySequence_GetItem(ro, 1);
+                    if (!wxRect_helper(o1, &out_rect)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else if (!PyInt_Check(o2)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else
+                        *x_extent = PyInt_AsLong(o2);
+                    
+                    Py_DECREF(o1);
+                    Py_DECREF(o2);
+                }
+                else {
+                    PyErr_SetString(PyExc_TypeError, errmsg);
+                }
+                Py_DECREF(ro);
+            }
+
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+            Py_DECREF(otext);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawTab(dc, in_rect, caption, active, out_rect, x_extent);
+    }
+
+
+    DEC_PYCALLBACK__FONT(SetNormalFont);
+    DEC_PYCALLBACK__FONT(SetSelectedFont);
+    DEC_PYCALLBACK__FONT(SetMeasuringFont);
+
+    PYPRIVATE;
+};
+
+
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetNormalFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetSelectedFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetMeasuringFont);
+
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -10900,6 +10985,354 @@ SWIGINTERN PyObject *FloatingPane_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_delete_TabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_TabArt" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:TabArt_DrawBackground",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawBackground" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawBackground" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawBackground(arg2,(wxRect const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawTab(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  wxString *arg4 = 0 ;
+  bool arg5 ;
+  wxRect *arg6 = (wxRect *) 0 ;
+  int *arg7 = (int *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  bool temp4 = false ;
+  bool val5 ;
+  int ecode5 = 0 ;
+  void *argp6 = 0 ;
+  int res6 = 0 ;
+  void *argp7 = 0 ;
+  int res7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "in_rect",(char *) "caption",(char *) "active",(char *) "out_rect",(char *) "x_extent", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:TabArt_DrawTab",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawTab" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawTab" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    arg4 = wxString_in_helper(obj3);
+    if (arg4 == NULL) SWIG_fail;
+    temp4 = true;
+  }
+  ecode5 = SWIG_AsVal_bool(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "TabArt_DrawTab" "', expected argument " "5"" of type '" "bool""'");
+  } 
+  arg5 = static_cast< bool >(val5);
+  res6 = SWIG_ConvertPtr(obj5, &argp6,SWIGTYPE_p_wxRect, 0 |  0 );
+  if (!SWIG_IsOK(res6)) {
+    SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "TabArt_DrawTab" "', expected argument " "6"" of type '" "wxRect *""'"); 
+  }
+  arg6 = reinterpret_cast< wxRect * >(argp6);
+  res7 = SWIG_ConvertPtr(obj6, &argp7,SWIGTYPE_p_int, 0 |  0 );
+  if (!SWIG_IsOK(res7)) {
+    SWIG_exception_fail(SWIG_ArgError(res7), "in method '" "TabArt_DrawTab" "', expected argument " "7"" of type '" "int *""'"); 
+  }
+  arg7 = reinterpret_cast< int * >(argp7);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawTab(arg2,(wxRect const &)*arg3,(wxString const &)*arg4,arg5,arg6,arg7);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetNormalFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetNormalFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetNormalFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetNormalFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetSelectedFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetSelectedFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetSelectedFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetSelectedFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetMeasuringFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetMeasuringFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetMeasuringFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *TabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_new_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_DefaultTabArt",0,0,0)) SWIG_fail;
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDefaultTabArt *)new wxDefaultTabArt();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *arg1 = (wxDefaultTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DefaultTabArt" "', expected argument " "1"" of type '" "wxDefaultTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDefaultTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DefaultTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDefaultTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DefaultTabArt_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_AuiNotebookEvent(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxEventType arg1 = (wxEventType) wxEVT_NULL ;
@@ -11587,6 +12020,59 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"AuiTabContainerButton_location_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  if (arg1) (arg1)->location = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_get" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  result = (int) ((arg1)->location);
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainerButton_bitmap_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
@@ -11746,6 +12232,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainer_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiTabContainer_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainer_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainer_AddPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
@@ -12546,21 +13098,25 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
   int arg2 ;
-  wxBitmap *arg3 = 0 ;
+  int arg3 ;
+  wxBitmap *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   int val2 ;
   int ecode2 = 0 ;
-  void *argp3 = 0 ;
-  int res3 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  void *argp4 = 0 ;
+  int res4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "id",(char *) "bmp", NULL 
+    (char *) "self",(char *) "id",(char *) "location",(char *) "bmp", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_AddButton" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
@@ -12571,17 +13127,22 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainer_AddButton" "', expected argument " "2"" of type '" "int""'");
   } 
   arg2 = static_cast< int >(val2);
-  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxBitmap,  0  | 0);
-  if (!SWIG_IsOK(res3)) {
-    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxBitmap,  0  | 0);
+  if (!SWIG_IsOK(res4)) {
+    SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  if (!argp3) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  if (!argp4) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  arg3 = reinterpret_cast< wxBitmap * >(argp3);
+  arg4 = reinterpret_cast< wxBitmap * >(argp4);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->AddButton(arg2,(wxBitmap const &)*arg3);
+    (arg1)->AddButton(arg2,arg3,(wxBitmap const &)*arg4);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -13309,6 +13870,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiMultiNotebook_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *AuiMultiNotebook_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -13327,6 +13954,13 @@ SWIGINTERN PyObject *PyDockArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyOb
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *PyTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxPyTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
 static PyMethodDef SwigMethods[] = {
         { (char *)"new_PaneInfo", (PyCFunction)_wrap_new_PaneInfo, METH_NOARGS, NULL},
         { (char *)"delete_PaneInfo", (PyCFunction)_wrap_delete_PaneInfo, METH_O, NULL},
@@ -13563,6 +14197,17 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"FloatingPane_SetPaneWindow", (PyCFunction) _wrap_FloatingPane_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"FloatingPane_swigregister", FloatingPane_swigregister, METH_VARARGS, NULL},
         { (char *)"FloatingPane_swiginit", FloatingPane_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_TabArt", (PyCFunction)_wrap_delete_TabArt, METH_O, NULL},
+        { (char *)"TabArt_DrawBackground", (PyCFunction) _wrap_TabArt_DrawBackground, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_DrawTab", (PyCFunction) _wrap_TabArt_DrawTab, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetNormalFont", (PyCFunction) _wrap_TabArt_SetNormalFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetSelectedFont", (PyCFunction) _wrap_TabArt_SetSelectedFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetMeasuringFont", (PyCFunction) _wrap_TabArt_SetMeasuringFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_swigregister", TabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DefaultTabArt", (PyCFunction)_wrap_new_DefaultTabArt, METH_NOARGS, NULL},
+        { (char *)"delete_DefaultTabArt", (PyCFunction)_wrap_delete_DefaultTabArt, METH_O, NULL},
+        { (char *)"DefaultTabArt_swigregister", DefaultTabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"DefaultTabArt_swiginit", DefaultTabArt_swiginit, METH_VARARGS, NULL},
         { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetSelection, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetOldSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetOldSelection, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13589,6 +14234,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_id_get", (PyCFunction)_wrap_AuiTabContainerButton_id_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_cur_state_set", _wrap_AuiTabContainerButton_cur_state_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_cur_state_get", (PyCFunction)_wrap_AuiTabContainerButton_cur_state_get, METH_O, NULL},
+        { (char *)"AuiTabContainerButton_location_set", _wrap_AuiTabContainerButton_location_set, METH_VARARGS, NULL},
+        { (char *)"AuiTabContainerButton_location_get", (PyCFunction)_wrap_AuiTabContainerButton_location_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_bitmap_set", _wrap_AuiTabContainerButton_bitmap_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_bitmap_get", (PyCFunction)_wrap_AuiTabContainerButton_bitmap_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_rect_set", _wrap_AuiTabContainerButton_rect_set, METH_VARARGS, NULL},
@@ -13596,6 +14243,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_swigregister", AuiTabContainerButton_swigregister, METH_VARARGS, NULL},
         { (char *)"new_AuiTabContainer", (PyCFunction)_wrap_new_AuiTabContainer, METH_NOARGS, NULL},
         { (char *)"delete_AuiTabContainer", (PyCFunction)_wrap_delete_AuiTabContainer, METH_O, NULL},
+        { (char *)"AuiTabContainer_SetArtProvider", (PyCFunction) _wrap_AuiTabContainer_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiTabContainer_GetArtProvider", (PyCFunction)_wrap_AuiTabContainer_GetArtProvider, METH_O, NULL},
         { (char *)"AuiTabContainer_AddPage", (PyCFunction) _wrap_AuiTabContainer_AddPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_InsertPage", (PyCFunction) _wrap_AuiTabContainer_InsertPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_RemovePage", (PyCFunction) _wrap_AuiTabContainer_RemovePage, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13632,9 +14281,12 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiMultiNotebook_GetSelection", (PyCFunction)_wrap_AuiMultiNotebook_GetSelection, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPageCount", (PyCFunction)_wrap_AuiMultiNotebook_GetPageCount, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPage", (PyCFunction) _wrap_AuiMultiNotebook_GetPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_SetArtProvider", (PyCFunction) _wrap_AuiMultiNotebook_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_GetArtProvider", (PyCFunction)_wrap_AuiMultiNotebook_GetArtProvider, METH_O, NULL},
         { (char *)"AuiMultiNotebook_swigregister", AuiMultiNotebook_swigregister, METH_VARARGS, NULL},
         { (char *)"AuiMultiNotebook_swiginit", AuiMultiNotebook_swiginit, METH_VARARGS, NULL},
         { (char *)"PyDockArt_swigregister", PyDockArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"PyTabArt_swigregister", PyTabArt_swigregister, METH_VARARGS, NULL},
         { NULL, NULL, 0, NULL }
 };
 
@@ -14847,9 +15499,15 @@ static void *_p_wxPyDockArtTo_p_wxDockArt(void *x) {
 static void *_p_wxPyDockArtTo_p_wxDefaultDockArt(void *x) {
     return (void *)((wxDefaultDockArt *)  ((wxPyDockArt *) x));
 }
+static void *_p_wxDefaultTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *)  ((wxDefaultTabArt *) x));
+}
+static void *_p_wxPyTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *)  ((wxPyTabArt *) x));
+}
 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_int = {"_p_int", "int *|wxEventType *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxAuiTabContainerButton = {"_p_p_wxAuiTabContainerButton", "wxAuiTabContainerButton **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxWindow = {"_p_p_wxWindow", "wxWindow **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxSplashScreen = {"_p_p_wxSplashScreen", 0, 0, 0, 0, 0};
@@ -14929,6 +15587,7 @@ static swig_type_info _swigt__p_wxControl = {"_p_wxControl", "wxControl *", 0, 0
 static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDefaultDockArt = {"_p_wxDefaultDockArt", "wxDefaultDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDefaultTabArt = {"_p_wxDefaultTabArt", "wxDefaultTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockArt = {"_p_wxDockArt", "wxDockArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockInfo = {"_p_wxDockInfo", "wxDockInfo *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockUIPart = {"_p_wxDockUIPart", "wxDockUIPart *", 0, 0, (void*)0, 0};
@@ -15065,11 +15724,13 @@ static swig_type_info _swigt__p_wxPaneInfoPtrArray = {"_p_wxPaneInfoPtrArray", "
 static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPoint = {"_p_wxPoint", "wxPoint *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyDockArt = {"_p_wxPyDockArt", "wxPyDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPyTabArt = {"_p_wxPyTabArt", "wxPyTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRect = {"_p_wxRect", "wxRect *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSize = {"_p_wxSize", "wxSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", "wxSizer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", "wxSizerItem *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxString = {"_p_wxString", "wxString *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxTabArt = {"_p_wxTabArt", "wxTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxTopLevelWindow = {"_p_wxTopLevelWindow", "wxTopLevelWindow *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0};
 
@@ -15158,6 +15819,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDC,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDefaultDockArt,
+  &_swigt__p_wxDefaultTabArt,
   &_swigt__p_wxDialog,
   &_swigt__p_wxDirDialog,
   &_swigt__p_wxDisplayChangedEvent,
@@ -15258,6 +15920,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyPrintout,
   &_swigt__p_wxPyScrolledWindow,
   &_swigt__p_wxPySizer,
+  &_swigt__p_wxPyTabArt,
   &_swigt__p_wxPyTaskBarIcon,
   &_swigt__p_wxPyVListBox,
   &_swigt__p_wxPyVScrolledWindow,
@@ -15289,6 +15952,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxString,
   &_swigt__p_wxSysColourChangedEvent,
   &_swigt__p_wxTIFFHandler,
+  &_swigt__p_wxTabArt,
   &_swigt__p_wxTaskBarIconEvent,
   &_swigt__p_wxTextEntryDialog,
   &_swigt__p_wxTipWindow,
@@ -15383,6 +16047,7 @@ static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWit
 static swig_cast_info _swigc__p_wxControl[] = {  {&_swigt__p_wxControl, 0, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxControl, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDefaultDockArt[] = {  {&_swigt__p_wxDefaultDockArt, 0, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDefaultDockArt, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDefaultTabArt[] = {  {&_swigt__p_wxDefaultTabArt, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockArt[] = {  {&_swigt__p_wxDockArt, 0, 0, 0},  {&_swigt__p_wxDefaultDockArt, _p_wxDefaultDockArtTo_p_wxDockArt, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDockArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockInfo[] = {  {&_swigt__p_wxDockInfo, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockUIPart[] = {  {&_swigt__p_wxDockUIPart, 0, 0, 0},{0, 0, 0, 0}};
@@ -15519,11 +16184,13 @@ static swig_cast_info _swigc__p_wxPaneInfoPtrArray[] = {  {&_swigt__p_wxPaneInfo
 static swig_cast_info _swigc__p_wxPaperSize[] = {  {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPoint[] = {  {&_swigt__p_wxPoint, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyDockArt[] = {  {&_swigt__p_wxPyDockArt, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyTabArt[] = {  {&_swigt__p_wxPyTabArt, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRect[] = {  {&_swigt__p_wxRect, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSize[] = {  {&_swigt__p_wxSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizer[] = {  {&_swigt__p_wxSizer, 0, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxSizer, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizerItem[] = {  {&_swigt__p_wxSizerItem, 0, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxSizerItem, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxString[] = {  {&_swigt__p_wxString, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTabArt[] = {  {&_swigt__p_wxTabArt, 0, 0, 0},  {&_swigt__p_wxDefaultTabArt, _p_wxDefaultTabArtTo_p_wxTabArt, 0, 0},  {&_swigt__p_wxPyTabArt, _p_wxPyTabArtTo_p_wxTabArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxTopLevelWindow[] = {  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTipWindow, _p_wxTipWindowTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, 0, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxTopLevelWindow, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxWindow[] = {  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPanel, _p_wxPyPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPanel, _p_wxPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxStatusBar, _p_wxStatusBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxScrolledWindow, _p_wxScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTipWindow, _p_wxTipWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, _p_wxTopLevelWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplashScreenWindow, _p_wxSplashScreenWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplitterWindow, _p_wxSplitterWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSashWindow, _p_wxSashWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIClientWindow, _p_wxMDIClientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyScrolledWindow, _p_wxPyScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxWindow, 0, 0, 0},  {&_swigt__p_wxSashLayoutWindow, _p_wxSashLayoutWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPopupWindow, _p_wxPopupWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPopupTransientWindow, _p_wxPyPopupTransientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVScrolledWindow, _p_wxPyVScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyWindow, _p_wxPyWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewCanvas, _p_wxPreviewCanvasTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyHtmlListBox, _p_wxPyHtmlListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVListBox, _p_wxPyVListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewControlBar, _p_wxPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewControlBar, _p_wxPyPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxWindow, 0, 0},{0, 0, 0, 0}};
 
@@ -15612,6 +16279,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDC,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDefaultDockArt,
+  _swigc__p_wxDefaultTabArt,
   _swigc__p_wxDialog,
   _swigc__p_wxDirDialog,
   _swigc__p_wxDisplayChangedEvent,
@@ -15712,6 +16380,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyPrintout,
   _swigc__p_wxPyScrolledWindow,
   _swigc__p_wxPySizer,
+  _swigc__p_wxPyTabArt,
   _swigc__p_wxPyTaskBarIcon,
   _swigc__p_wxPyVListBox,
   _swigc__p_wxPyVScrolledWindow,
@@ -15743,6 +16412,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxString,
   _swigc__p_wxSysColourChangedEvent,
   _swigc__p_wxTIFFHandler,
+  _swigc__p_wxTabArt,
   _swigc__p_wxTaskBarIconEvent,
   _swigc__p_wxTextEntryDialog,
   _swigc__p_wxTipWindow,
index 3134b9c7c6f9e50f5334ece80055633100be81ea..258f4b14a4377465c3c1e28754871c460ae6287e 100644 (file)
@@ -440,7 +440,26 @@ class GridCellBoolEditor(GridCellEditor):
         _grid.GridCellBoolEditor_swiginit(self,_grid.new_GridCellBoolEditor(*args, **kwargs))
         self._setOORInfo(self)
 
+    def UseStringValues(*args, **kwargs):
+        """UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+        return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+    UseStringValues = staticmethod(UseStringValues)
+    def IsTrueValue(*args, **kwargs):
+        """IsTrueValue(String value) -> bool"""
+        return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
+
+    IsTrueValue = staticmethod(IsTrueValue)
 _grid.GridCellBoolEditor_swigregister(GridCellBoolEditor)
+OneString = cvar.OneString
+
+def GridCellBoolEditor_UseStringValues(*args, **kwargs):
+  """GridCellBoolEditor_UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+  return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+def GridCellBoolEditor_IsTrueValue(*args, **kwargs):
+  """GridCellBoolEditor_IsTrueValue(String value) -> bool"""
+  return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
 
 class GridCellChoiceEditor(GridCellEditor):
     """Proxy of C++ GridCellChoiceEditor class"""
index c5f4865d40c44bb73d966384a085075501de02c8..518d071d643ab92f6e18135f1563506569e379ef 100644 (file)
@@ -3482,6 +3482,7 @@ IMP_PYCALLBACK__(wxPyGridCellEditor, wxGridCellEditor, Destroy);
 IMP_PYCALLBACK_STRING__constpure(wxPyGridCellEditor, wxGridCellEditor, GetValue);
 
 
+ static const wxString wxPyOneString(_T("1")); 
 SWIGINTERN void wxGridCellAttr__setOORInfo(wxGridCellAttr *self,PyObject *_self){
             if (!self->GetClientObject())
                 self->SetClientObject(new wxPyOORClientData(_self));
@@ -5700,6 +5701,26 @@ SWIGINTERN PyObject *GridCellFloatEditor_swiginit(PyObject *SWIGUNUSEDPARM(self)
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN int OneString_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable OneString is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *OneString_get(void) {
+  PyObject *pyobj = 0;
+  
+  {
+#if wxUSE_UNICODE
+    pyobj = PyUnicode_FromWideChar((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#else
+    pyobj = PyString_FromStringAndSize((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#endif
+  }
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_new_GridCellBoolEditor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGridCellBoolEditor *result = 0 ;
@@ -5718,6 +5739,103 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_UseStringValues(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString const &arg1_defvalue = wxPyOneString ;
+  wxString *arg1 = (wxString *) &arg1_defvalue ;
+  wxString const &arg2_defvalue = wxPyEmptyString ;
+  wxString *arg2 = (wxString *) &arg2_defvalue ;
+  bool temp1 = false ;
+  bool temp2 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "valueTrue",(char *) "valueFalse", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:GridCellBoolEditor_UseStringValues",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (obj0) {
+    {
+      arg1 = wxString_in_helper(obj0);
+      if (arg1 == NULL) SWIG_fail;
+      temp1 = true;
+    }
+  }
+  if (obj1) {
+    {
+      arg2 = wxString_in_helper(obj1);
+      if (arg2 == NULL) SWIG_fail;
+      temp2 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxGridCellBoolEditor::UseStringValues((wxString const &)*arg1,(wxString const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_IsTrueValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString *arg1 = 0 ;
+  bool result;
+  bool temp1 = false ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "value", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GridCellBoolEditor_IsTrueValue",kwnames,&obj0)) SWIG_fail;
+  {
+    arg1 = wxString_in_helper(obj0);
+    if (arg1 == NULL) SWIG_fail;
+    temp1 = true;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)wxGridCellBoolEditor::IsTrueValue((wxString const &)*arg1);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *GridCellBoolEditor_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -20576,6 +20694,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GridCellFloatEditor_swigregister", GridCellFloatEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellFloatEditor_swiginit", GridCellFloatEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellBoolEditor", (PyCFunction)_wrap_new_GridCellBoolEditor, METH_NOARGS, NULL},
+        { (char *)"GridCellBoolEditor_UseStringValues", (PyCFunction) _wrap_GridCellBoolEditor_UseStringValues, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GridCellBoolEditor_IsTrueValue", (PyCFunction) _wrap_GridCellBoolEditor_IsTrueValue, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GridCellBoolEditor_swigregister", GridCellBoolEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellBoolEditor_swiginit", GridCellBoolEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellChoiceEditor", (PyCFunction) _wrap_new_GridCellChoiceEditor, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -23387,6 +23507,7 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "GRID_MIN_ROW_HEIGHT",SWIG_From_int(static_cast< int >(wxGRID_MIN_ROW_HEIGHT)));
   SWIG_Python_SetConstant(d, "GRID_MIN_COL_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_MIN_COL_WIDTH)));
   SWIG_Python_SetConstant(d, "GRID_DEFAULT_SCROLLBAR_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_DEFAULT_SCROLLBAR_WIDTH)));
+  SWIG_addvarlink(SWIG_globals(),(char*)"OneString",OneString_get, OneString_set);
   SWIG_Python_SetConstant(d, "GridCellAttr_Any",SWIG_From_int(static_cast< int >(wxGridCellAttr::Any)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Default",SWIG_From_int(static_cast< int >(wxGridCellAttr::Default)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Cell",SWIG_From_int(static_cast< int >(wxGridCellAttr::Cell)));
index 91eac93aefa6c1f1f71934c6baced49eb2bf621b..bc2056a53509aeefbb6378ea270cd7ac850458b3 100644 (file)
@@ -5088,6 +5088,112 @@ class GraphicsFont(GraphicsObject):
     __del__ = lambda self : None;
 _gdi_.GraphicsFont_swigregister(GraphicsFont)
 
+class GraphicsMatrix(GraphicsObject):
+    """Proxy of C++ GraphicsMatrix class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
+    __del__ = lambda self : None;
+    def Concat(*args, **kwargs):
+        """
+        Concat(self, GraphicsMatrix t)
+
+        concatenates the matrix
+        """
+        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
+
+    def Copy(*args, **kwargs):
+        """
+        Copy(self, GraphicsMatrix t)
+
+        Copy the passed in matrix to this one.
+        """
+        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
+
+    def Set(*args, **kwargs):
+        """
+        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
+            Double tx=0.0, Double ty=0.0)
+
+        sets the matrix to the respective values
+        """
+        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
+
+    def Invert(*args, **kwargs):
+        """
+        Invert(self)
+
+        makes this the inverse matrix
+        """
+        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
+
+    def IsEqual(*args, **kwargs):
+        """
+        IsEqual(self, GraphicsMatrix t) -> bool
+
+        returns true if the elements of the transformation matrix are equal
+        """
+        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
+
+    def IsIdentity(*args, **kwargs):
+        """
+        IsIdentity(self) -> bool
+
+        return true if this is the identity matrix
+        """
+        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
+
+    def Translate(*args, **kwargs):
+        """
+        Translate(self, Double dx, Double dy)
+
+        add the translation to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
+
+    def Scale(*args, **kwargs):
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        add the scale to this matrix
+        """
+        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
+
+    def Rotate(*args, **kwargs):
+        """
+        Rotate(self, Double angle)
+
+        add the rotation to this matrix (radians)
+        """
+        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
+
+    def TransformPoint(*args, **kwargs):
+        """
+        TransformPoint(self, x, y) --> (x, y)
+
+        applies that matrix to the point
+        """
+        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
+
+    def TransformDistance(*args, **kwargs):
+        """
+        TransformDistance(self, dx, dy) --> (dx, dy)
+
+        applies the matrix except for translations
+        """
+        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
+
+    def GetNativeMatrix(*args, **kwargs):
+        """
+        GetNativeMatrix(self) -> void
+
+        returns the native representation
+        """
+        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
+
+_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
+
 class GraphicsPath(GraphicsObject):
     """Proxy of C++ GraphicsPath class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -5095,10 +5201,6 @@ class GraphicsPath(GraphicsObject):
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsPath"""
-        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
-
     def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
@@ -5255,120 +5357,6 @@ class GraphicsPath(GraphicsObject):
         return _gdi_.GraphicsPath_Contains(*args)
 
 _gdi_.GraphicsPath_swigregister(GraphicsPath)
-cvar = _gdi_.cvar
-NullGraphicsPen = cvar.NullGraphicsPen
-NullGraphicsBrush = cvar.NullGraphicsBrush
-NullGraphicsFont = cvar.NullGraphicsFont
-
-class GraphicsMatrix(GraphicsObject):
-    """Proxy of C++ GraphicsMatrix class"""
-    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
-    def __init__(self): raise AttributeError, "No constructor defined"
-    __repr__ = _swig_repr
-    __swig_destroy__ = _gdi_.delete_GraphicsMatrix
-    __del__ = lambda self : None;
-    def Clone(*args, **kwargs):
-        """Clone(self) -> GraphicsMatrix"""
-        return _gdi_.GraphicsMatrix_Clone(*args, **kwargs)
-
-    def Concat(*args, **kwargs):
-        """
-        Concat(self, GraphicsMatrix t)
-
-        concatenates the matrix
-        """
-        return _gdi_.GraphicsMatrix_Concat(*args, **kwargs)
-
-    def Copy(*args, **kwargs):
-        """
-        Copy(self, GraphicsMatrix t)
-
-        copies the passed in matrix
-        """
-        return _gdi_.GraphicsMatrix_Copy(*args, **kwargs)
-
-    def Set(*args, **kwargs):
-        """
-        Set(self, Double a=1.0, Double b=0.0, Double c=0.0, Double d=1.0, 
-            Double tx=0.0, Double ty=0.0)
-
-        sets the matrix to the respective values
-        """
-        return _gdi_.GraphicsMatrix_Set(*args, **kwargs)
-
-    def Invert(*args, **kwargs):
-        """
-        Invert(self)
-
-        makes this the inverse matrix
-        """
-        return _gdi_.GraphicsMatrix_Invert(*args, **kwargs)
-
-    def IsEqual(*args, **kwargs):
-        """
-        IsEqual(self, GraphicsMatrix t) -> bool
-
-        returns true if the elements of the transformation matrix are equal
-        """
-        return _gdi_.GraphicsMatrix_IsEqual(*args, **kwargs)
-
-    def IsIdentity(*args, **kwargs):
-        """
-        IsIdentity(self) -> bool
-
-        return true if this is the identity matrix
-        """
-        return _gdi_.GraphicsMatrix_IsIdentity(*args, **kwargs)
-
-    def Translate(*args, **kwargs):
-        """
-        Translate(self, Double dx, Double dy)
-
-        add the translation to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Translate(*args, **kwargs)
-
-    def Scale(*args, **kwargs):
-        """
-        Scale(self, Double xScale, Double yScale)
-
-        add the scale to this matrix
-        """
-        return _gdi_.GraphicsMatrix_Scale(*args, **kwargs)
-
-    def Rotate(*args, **kwargs):
-        """
-        Rotate(self, Double angle)
-
-        add the rotation to this matrix (radians)
-        """
-        return _gdi_.GraphicsMatrix_Rotate(*args, **kwargs)
-
-    def TransformPoint(*args, **kwargs):
-        """
-        TransformPoint(self, x, y) --> (x, y)
-
-        applies that matrix to the point
-        """
-        return _gdi_.GraphicsMatrix_TransformPoint(*args, **kwargs)
-
-    def TransformDistance(*args, **kwargs):
-        """
-        TransformDistance(self, dx, dy) --> (dx, dy)
-
-        applies the matrix except for translations
-        """
-        return _gdi_.GraphicsMatrix_TransformDistance(*args, **kwargs)
-
-    def GetNativeMatrix(*args, **kwargs):
-        """
-        GetNativeMatrix(self) -> void
-
-        returns the native representation
-        """
-        return _gdi_.GraphicsMatrix_GetNativeMatrix(*args, **kwargs)
-
-_gdi_.GraphicsMatrix_swigregister(GraphicsMatrix)
 
 class GraphicsContext(GraphicsObject):
     """Proxy of C++ GraphicsContext class"""
@@ -5524,6 +5512,30 @@ class GraphicsContext(GraphicsObject):
         """
         return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
+    def ConcatTransform(*args, **kwargs):
+        """
+        ConcatTransform(self, GraphicsMatrix matrix)
+
+        concatenates this transform with the current transform of this context
+        """
+        return _gdi_.GraphicsContext_ConcatTransform(*args, **kwargs)
+
+    def SetTransform(*args, **kwargs):
+        """
+        SetTransform(self, GraphicsMatrix matrix)
+
+        sets the transform of this context
+        """
+        return _gdi_.GraphicsContext_SetTransform(*args, **kwargs)
+
+    def GetTransform(*args, **kwargs):
+        """
+        GetTransform(self) -> GraphicsMatrix
+
+        gets the matrix of this context
+        """
+        return _gdi_.GraphicsContext_GetTransform(*args, **kwargs)
+
     def SetPen(*args):
         """
         SetPen(self, GraphicsPen pen)
@@ -5668,6 +5680,12 @@ class GraphicsContext(GraphicsObject):
         return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
 
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
+cvar = _gdi_.cvar
+NullGraphicsPen = cvar.NullGraphicsPen
+NullGraphicsBrush = cvar.NullGraphicsBrush
+NullGraphicsFont = cvar.NullGraphicsFont
+NullGraphicsMatrix = cvar.NullGraphicsMatrix
+NullGraphicsPath = cvar.NullGraphicsPath
 
 def GraphicsContext_Create(*args):
   """
index d1cb49c9a85df3e672aa3a3000b7586925364672..c16c80e99487377bda2477606b2df9fd36559237 100644 (file)
@@ -3610,8 +3610,6 @@ public :
     }
     virtual ~wxGraphicsPath() {}
 
-    virtual wxGraphicsPath *Clone() const { return NULL; }
-
     void MoveToPoint( wxDouble, wxDouble ) {}
     void MoveToPoint( const wxPoint2DDouble& ) {}
     void AddLineToPoint( wxDouble, wxDouble ) {}
@@ -3641,6 +3639,7 @@ public :
     bool Contains( wxDouble , wxDouble , int ) { return false; }
     bool Contains( const wxPoint2DDouble& , int ) { return false; }
 };
+wxGraphicsPath wxNullGraphicsPath;
 
 
 class wxGraphicsMatrix : public wxGraphicsObject
@@ -3651,7 +3650,6 @@ public :
                         "wx.GraphicsMatrix is not available on this platform.");
     }
     virtual ~wxGraphicsMatrix() {}
-    virtual wxGraphicsMatrix *Clone() const { return NULL; }
     virtual void Concat( const wxGraphicsMatrix * ) {}
     virtual void Copy( const wxGraphicsMatrix * )  {}
     virtual void Set(wxDouble , wxDouble , wxDouble , wxDouble ,
@@ -3666,7 +3664,7 @@ public :
     virtual void TransformDistance( wxDouble *, wxDouble * ) {}
     virtual void * GetNativeMatrix() const { return NULL; }
 };
-
+wxGraphicsMatrix wxNullGraphicsMatrix;
 
 
 class wxGraphicsContext : public wxGraphicsObject
@@ -3825,6 +3823,9 @@ public:
 
 #endif
 
+SWIGINTERN void wxGraphicsMatrix_Copy(wxGraphicsMatrix *self,wxGraphicsMatrix const &t){
+            *self = t;
+        }
 SWIGINTERN PyObject *wxGraphicsContext_GetTextExtent(wxGraphicsContext *self,wxString const &text){
             wxDouble width = 0.0,
                      height = 0.0;
@@ -26099,62 +26100,20 @@ SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
-SWIGINTERN int NullGraphicsPen_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsPen_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN int NullGraphicsFont_set(PyObject *) {
-  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
-  return 1;
-}
-
-
-SWIGINTERN PyObject *NullGraphicsFont_get(void) {
-  PyObject *pyobj = 0;
-  
-  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
-  return pyobj;
-}
-
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
     delete arg1;
     
@@ -26167,62 +26126,75 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    (arg1)->Concat((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->MoveToPoint(arg2,arg3);
+    wxGraphicsMatrix_Copy(arg1,(wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26232,26 +26204,90 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 = (wxDouble) 1.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxDouble arg5 = (wxDouble) 1.0 ;
+  wxDouble arg6 = (wxDouble) 0.0 ;
+  wxDouble arg7 = (wxDouble) 0.0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  double val7 ;
+  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
+  }
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
+  }
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
+  }
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
   {
-    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26261,55 +26297,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
   {
-    (arg1)->AddLineToPoint(arg2,arg3);
+    (arg1)->Invert();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26319,116 +26322,112 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", NULL 
+  };
   
-  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[4];
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
-  --argc;
-  if (argc == 2) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  if (argc == 3) {
-    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (bool)(arg1)->IsIdentity();
+    if (PyErr_Occurred()) SWIG_fail;
   }
-  
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+  };
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
-  } 
-  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->Translate(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26438,38 +26437,42 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D *arg2 = 0 ;
-  wxPoint2D *arg3 = 0 ;
-  wxPoint2D *arg4 = 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxPoint2D temp2 ;
-  wxPoint2D temp3 ;
-  wxPoint2D temp4 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+  };
   
-  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
-  }
-  {
-    arg3 = &temp3;
-    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
-  }
-  {
-    arg4 = &temp4;
-    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    (arg1)->Scale(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26479,52 +26482,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[8];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
-  --argc;
-  if (argc == 4) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
-  }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
-  }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "path", NULL 
+    (char *) "self",(char *) "angle", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
   {
-    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    (arg1)->Rotate(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26534,119 +26518,229 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    (arg1)->CloseSubpath();
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    (arg1)->TransformPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble *arg2 = (wxDouble *) 0 ;
+  wxDouble *arg3 = (wxDouble *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxDouble temp2 ;
+  int res2 = 0 ;
+  wxDouble temp3 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj1, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
+    }
+    temp2 = static_cast< wxDouble >(val);
+    arg2 = &temp2;
+    res2 = SWIG_AddTmpMask(ecode);
+  }
+  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
+    double val; 
+    int ecode = SWIG_AsVal_double(obj2, &val);
+    if (!SWIG_IsOK(ecode)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
+    }
+    temp3 = static_cast< wxDouble >(val);
+    arg3 = &temp3;
+    res3 = SWIG_AddTmpMask(ecode);
+  }
+  {
+    (arg1)->TransformDistance(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  if (SWIG_IsTmpObj(res2)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
+  }
+  if (SWIG_IsTmpObj(res3)) {
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
+  } else {
+    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
+    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  void *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_DISOWN |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetCurrentPoint();
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  bool val7 ;
-  int ecode7 = 0 ;
   
-  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
-  if (!SWIG_IsOK(ecode7)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
-  } 
-  arg7 = static_cast< bool >(val7);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->MoveToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26656,58 +26750,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxPoint2D *arg2 = 0 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   wxPoint2D temp2 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  bool val6 ;
-  int ecode6 = 0 ;
   
-  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
     arg2 = &temp2;
     if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
-  } 
-  arg6 = static_cast< bool >(val6);
   {
-    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26717,79 +26779,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[8];
+  PyObject *argv[4];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_MoveToPoint",0,3,argv))) SWIG_fail;
   --argc;
-  if (argc == 6) {
-    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
+  if (argc == 2) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_1(self, argc, argv);
   }
-  if (argc == 7) {
-    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
+  if (argc == 3) {
+    return _wrap_GraphicsPath_MoveToPoint__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_MoveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    (arg1)->AddLineToPoint(arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26799,60 +26837,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->AddLineToPoint((wxPoint2D const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26862,61 +26866,26 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddLineToPoint",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  {
-    (arg1)->AddCircle(arg2,arg3,arg4);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddLineToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -26924,6 +26893,7 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxDouble arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26936,49 +26906,47 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
-  };
+  double val7 ;
+  int ecode7 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
   if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
   } 
   arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
   if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
   if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_double(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "7"" of type '" "wxDouble""'");
+  } 
+  arg7 = static_cast< wxDouble >(val7);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    (arg1)->AddCurveToPoint(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26988,132 +26956,38 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
-  };
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if ((nobjs < 4) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
-  double val4 ;
-  int ecode4 = 0 ;
-  double val5 ;
-  int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  {
+    arg3 = &temp3;
+    if ( ! wxPoint2D_helper(swig_obj[2], &arg3)) SWIG_fail;
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
-  ecode4 = SWIG_AsVal_double(obj3, &val4);
-  if (!SWIG_IsOK(ecode4)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
-  } 
-  arg4 = static_cast< wxDouble >(val4);
-  ecode5 = SWIG_AsVal_double(obj4, &val5);
-  if (!SWIG_IsOK(ecode5)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  ecode6 = SWIG_AsVal_double(obj5, &val6);
-  if (!SWIG_IsOK(ecode6)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg4 = &temp4;
+    if ( ! wxPoint2D_helper(swig_obj[3], &arg4)) SWIG_fail;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27123,57 +26997,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddCurveToPoint",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 4) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  {
-    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
-    if (PyErr_Occurred()) SWIG_fail;
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddCurveToPoint__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddCurveToPoint'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  void *arg2 = (void *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int res2 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "p", NULL 
+    (char *) "self",(char *) "path", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_AddPath",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddPath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_AddPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->UnGetNativePath(arg2);
+    (arg1)->AddPath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27183,33 +27055,22 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "matrix", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_CloseSubpath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Transform(arg2);
+    (arg1)->CloseSubpath();
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27219,10 +27080,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxRect2DDouble result;
+  wxPoint2D result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -27231,179 +27092,225 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), P
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetCurrentPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (arg1)->GetBox();
+    result = (arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
-  int arg4 = (int) wxWINDING_RULE ;
-  bool result;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
+  bool arg7 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  int val4 ;
+  double val4 ;
   int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
+  bool val7 ;
+  int ecode7 = 0 ;
   
-  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  if ((nobjs < 7) || (nobjs > 7)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArc" "', expected argument " "2"" of type '" "wxDouble""'");
   } 
   arg2 = static_cast< wxDouble >(val2);
   ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
   if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
   arg3 = static_cast< wxDouble >(val3);
-  if (swig_obj[3]) {
-    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
-  }
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  ecode7 = SWIG_AsVal_bool(swig_obj[6], &val7);
+  if (!SWIG_IsOK(ecode7)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsPath_AddArc" "', expected argument " "7"" of type '" "bool""'");
+  } 
+  arg7 = static_cast< bool >(val7);
   {
-    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxPoint2DDouble *arg2 = 0 ;
-  int arg3 = (int) wxWINDING_RULE ;
-  bool result;
+  wxPoint2D *arg2 = 0 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  bool arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
-  int val3 ;
+  wxPoint2D temp2 ;
+  double val3 ;
   int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  bool val6 ;
+  int ecode6 = 0 ;
   
-  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  if ((nobjs < 6) || (nobjs > 6)) SWIG_fail;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
-  if (swig_obj[2]) {
-    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
-    } 
-    arg3 = static_cast< int >(val3);
-  }
   {
-    result = (bool)(arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
   }
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArc" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArc" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArc" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_bool(swig_obj[5], &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArc" "', expected argument " "6"" of type '" "bool""'");
+  } 
+  arg6 = static_cast< bool >(val6);
   {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+    (arg1)->AddArc((wxPoint2D const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
   int argc;
-  PyObject *argv[5];
+  PyObject *argv[8];
   
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
   --argc;
-  if ((argc >= 2) && (argc <= 3)) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    if (argc > 2) {
-      {
-        {
-          int res = SWIG_AsVal_int(argv[2], NULL);
-          _v = SWIG_CheckState(res);
-        }
-      }
-      if (!_v) goto check_1;
-    }
-    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(self, argc, argv);
   }
-check_1:
-  
-  if ((argc >= 3) && (argc <= 4)) {
-    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  if (argc == 7) {
+    return _wrap_GraphicsPath_AddArc__SWIG_0(self, argc, argv);
   }
   
 fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_AddArc'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *obj;
-  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
-  return SWIG_Py_Void();
-}
-
-SWIGINTERN PyObject *_wrap_delete_GraphicsMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "cx",(char *) "cy",(char *) "x",(char *) "y", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddQuadCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    delete arg1;
-    
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27413,59 +27320,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
-  
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Clone" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (wxGraphicsMatrix *)((wxGraphicsMatrix const *)arg1)->Clone();
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Concat(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Concat",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Concat" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Concat" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27475,33 +27383,51 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCircle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Copy",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:GraphicsPath_AddCircle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Copy" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_Copy" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddCircle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddCircle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddCircle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddCircle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
   {
-    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddCircle(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27511,15 +27437,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 = (wxDouble) 1.0 ;
-  wxDouble arg3 = (wxDouble) 0.0 ;
-  wxDouble arg4 = (wxDouble) 0.0 ;
-  wxDouble arg5 = (wxDouble) 1.0 ;
-  wxDouble arg6 = (wxDouble) 0.0 ;
-  wxDouble arg7 = (wxDouble) 0.0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27532,69 +27457,49 @@ SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(PyObject *SWIGUNUSEDPARM(self), Py
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
-  double val7 ;
-  int ecode7 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsMatrix_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddArcToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Set" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_double(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Set" "', expected argument " "2"" of type '" "wxDouble""'");
-    } 
-    arg2 = static_cast< wxDouble >(val2);
-  }
-  if (obj2) {
-    ecode3 = SWIG_AsVal_double(obj2, &val3);
-    if (!SWIG_IsOK(ecode3)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Set" "', expected argument " "3"" of type '" "wxDouble""'");
-    } 
-    arg3 = static_cast< wxDouble >(val3);
-  }
-  if (obj3) {
-    ecode4 = SWIG_AsVal_double(obj3, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsMatrix_Set" "', expected argument " "4"" of type '" "wxDouble""'");
-    } 
-    arg4 = static_cast< wxDouble >(val4);
-  }
-  if (obj4) {
-    ecode5 = SWIG_AsVal_double(obj4, &val5);
-    if (!SWIG_IsOK(ecode5)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsMatrix_Set" "', expected argument " "5"" of type '" "wxDouble""'");
-    } 
-    arg5 = static_cast< wxDouble >(val5);
-  }
-  if (obj5) {
-    ecode6 = SWIG_AsVal_double(obj5, &val6);
-    if (!SWIG_IsOK(ecode6)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsMatrix_Set" "', expected argument " "6"" of type '" "wxDouble""'");
-    } 
-    arg6 = static_cast< wxDouble >(val6);
-  }
-  if (obj6) {
-    ecode7 = SWIG_AsVal_double(obj6, &val7);
-    if (!SWIG_IsOK(ecode7)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsMatrix_Set" "', expected argument " "7"" of type '" "wxDouble""'");
-    } 
-    arg7 = static_cast< wxDouble >(val7);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddArcToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27604,22 +27509,60 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsPath_AddEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->Invert();
+    (arg1)->AddEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27629,109 +27572,129 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  double val4 ;
+  int ecode4 = 0 ;
+  double val5 ;
+  int ecode5 = 0 ;
+  double val6 ;
+  int ecode6 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "t", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_IsEqual",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsPath_AddRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsMatrix_IsEqual" "', expected argument " "2"" of type '" "wxGraphicsMatrix const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  ecode4 = SWIG_AsVal_double(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+  } 
+  arg4 = static_cast< wxDouble >(val4);
+  ecode5 = SWIG_AsVal_double(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  ecode6 = SWIG_AsVal_double(obj5, &val6);
+  if (!SWIG_IsOK(ecode6)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsPath_AddRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    (arg1)->AddRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_Py_Void();
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  bool result;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_IsIdentity" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    result = (bool)(arg1)->IsIdentity();
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dx",(char *) "dy", NULL 
+    (char *) "self",(char *) "p", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Translate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_UnGetNativePath",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_UnGetNativePath" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Translate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Translate" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
   {
-    (arg1)->Translate(arg2,arg3);
+    (arg1)->UnGetNativePath(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27741,42 +27704,36 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  double val3 ;
-  int ecode3 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "xScale",(char *) "yScale", NULL 
+    (char *) "self",(char *) "matrix", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_Scale",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsPath_Transform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Scale" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Transform" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
-  ecode3 = SWIG_AsVal_double(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsMatrix_Scale" "', expected argument " "3"" of type '" "wxDouble""'");
-  } 
-  arg3 = static_cast< wxDouble >(val3);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Transform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
   {
-    (arg1)->Scale(arg2,arg3);
+    (arg1)->Transform((wxGraphicsMatrix const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27786,102 +27743,77 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble arg2 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "angle", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsMatrix_Rotate",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsMatrix_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
-  } 
-  arg2 = static_cast< wxDouble >(val2);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
   {
-    (arg1)->Rotate(arg2);
+    result = (arg1)->GetBox();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxRect2DDouble(static_cast< const wxRect2DDouble& >(result))), SWIGTYPE_p_wxRect2DDouble, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  int arg4 = (int) wxWINDING_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
-  int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformPoint",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 3) || (nobjs > 4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformPoint" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "wxDouble""'");
+  } 
+  arg3 = static_cast< wxDouble >(val3);
+  if (swig_obj[3]) {
+    ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsPath_Contains" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
   }
   {
-    (arg1)->TransformPoint(arg2,arg3);
+    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -27889,66 +27821,46 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformDistance(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  wxDouble *arg2 = (wxDouble *) 0 ;
-  wxDouble *arg3 = (wxDouble *) 0 ;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2DDouble *arg2 = 0 ;
+  int arg3 = (int) wxWINDING_RULE ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  wxDouble temp2 ;
+  void *argp2 = 0 ;
   int res2 = 0 ;
-  wxDouble temp3 ;
-  int res3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "INOUT",(char *) "INOUT", NULL 
-  };
+  int val3 ;
+  int ecode3 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsMatrix_TransformDistance",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Contains" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  if (!(SWIG_IsOK((res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj1, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "2"" of type '" "wxDouble""'");
-    }
-    temp2 = static_cast< wxDouble >(val);
-    arg2 = &temp2;
-    res2 = SWIG_AddTmpMask(ecode);
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPoint2DDouble,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
   }
-  if (!(SWIG_IsOK((res3 = SWIG_ConvertPtr(obj2,SWIG_as_voidptrptr(&arg3),SWIGTYPE_p_double,0))))) {
-    double val; 
-    int ecode = SWIG_AsVal_double(obj2, &val);
-    if (!SWIG_IsOK(ecode)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode), "in method '" "GraphicsMatrix_TransformDistance" "', expected argument " "3"" of type '" "wxDouble""'");
-    }
-    temp3 = static_cast< wxDouble >(val);
-    arg3 = &temp3;
-    res3 = SWIG_AddTmpMask(ecode);
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsPath_Contains" "', expected argument " "2"" of type '" "wxPoint2DDouble const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPoint2DDouble * >(argp2);
+  if (swig_obj[2]) {
+    ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsPath_Contains" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->TransformDistance(arg2,arg3);
+    result = (bool)(arg1)->Contains((wxPoint2DDouble const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  if (SWIG_IsTmpObj(res2)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg2)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags));
-  }
-  if (SWIG_IsTmpObj(res3)) {
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_double((*arg3)));
-  } else {
-    int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN |  0 ) :  0 ;
-    resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_double, new_flags));
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
   return resultobj;
 fail:
@@ -27956,39 +27868,119 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsMatrix_GetNativeMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
-  void *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsMatrix, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_GetNativeMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix const *""'"); 
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_Contains",0,4,argv))) SWIG_fail;
+  --argc;
+  if ((argc >= 2) && (argc <= 3)) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxPoint2DDouble, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    if (argc > 2) {
+      {
+        {
+          int res = SWIG_AsVal_int(argv[2], NULL);
+          _v = SWIG_CheckState(res);
+        }
+      }
+      if (!_v) goto check_1;
+    }
+    return _wrap_GraphicsPath_Contains__SWIG_1(self, argc, argv);
   }
-  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
-  {
-    result = (void *)((wxGraphicsMatrix const *)arg1)->GetNativeMatrix();
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *GraphicsPath_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsMatrix, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPath, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
+SWIGINTERN int NullGraphicsPen_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPen is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPen_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPen), SWIGTYPE_p_wxGraphicsPen,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsBrush_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsBrush is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsBrush_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsBrush), SWIGTYPE_p_wxGraphicsBrush,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsFont_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsFont is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsFont_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsFont), SWIGTYPE_p_wxGraphicsFont,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsMatrix_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsMatrix is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsMatrix_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsMatrix), SWIGTYPE_p_wxGraphicsMatrix,  0 );
+  return pyobj;
+}
+
+
+SWIGINTERN int NullGraphicsPath_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable NullGraphicsPath is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *NullGraphicsPath_get(void) {
+  PyObject *pyobj = 0;
+  
+  pyobj = SWIG_NewPointerObj(SWIG_as_voidptr(&wxNullGraphicsPath), SWIGTYPE_p_wxGraphicsPath,  0 );
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_delete_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -28148,7 +28140,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -28161,10 +28153,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(s
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -28475,7 +28467,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -28550,10 +28542,10 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -28889,6 +28881,110 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsContext_ConcatTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_ConcatTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_ConcatTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->ConcatTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "matrix", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTransform",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsMatrix,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetTransform" "', expected argument " "2"" of type '" "wxGraphicsMatrix const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->SetTransform((wxGraphicsMatrix const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_GetTransform(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsMatrix result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_GetTransform" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = ((wxGraphicsContext const *)arg1)->GetTransform();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
@@ -29186,7 +29282,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
@@ -29203,13 +29299,16 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokePath(PyObject *SWIGUNUSEDPARM(s
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_StrokePath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   {
-    (arg1)->StrokePath((wxGraphicsPath const *)arg2);
+    (arg1)->StrokePath((wxGraphicsPath const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -29222,7 +29321,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   int arg3 = (int) wxWINDING_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -29243,9 +29342,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_FillPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_FillPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -29256,7 +29358,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_FillPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->FillPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->FillPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -29269,7 +29371,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = 0 ;
   int arg3 = (int) wxWINDING_RULE ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -29290,9 +29392,12 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawPath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGraphicsPath,  0  | 0);
   if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawPath" "', expected argument " "2"" of type '" "wxGraphicsPath const &""'"); 
   }
   arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
   if (obj2) {
@@ -29303,7 +29408,7 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawPath(PyObject *SWIGUNUSEDPARM(sel
     arg3 = static_cast< int >(val3);
   }
   {
-    (arg1)->DrawPath((wxGraphicsPath const *)arg2,arg3);
+    (arg1)->DrawPath((wxGraphicsPath const &)*arg2,arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -30396,7 +30501,7 @@ fail:
 SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
-  wxGraphicsPath *result = 0 ;
+  wxGraphicsPath result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -30409,10 +30514,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(
   }
   arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (arg1)->CreatePath();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPath(static_cast< const wxGraphicsPath& >(result))), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -30428,7 +30533,7 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
   wxDouble arg5 = (wxDouble) 1.0 ;
   wxDouble arg6 = (wxDouble) 0.0 ;
   wxDouble arg7 = (wxDouble) 0.0 ;
-  wxGraphicsMatrix *result = 0 ;
+  wxGraphicsMatrix result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -30503,10 +30608,10 @@ SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPAR
     arg7 = static_cast< wxDouble >(val7);
   }
   {
-    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsMatrix(static_cast< const wxGraphicsMatrix& >(result))), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -39313,8 +39418,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"delete_GraphicsFont", (PyCFunction)_wrap_delete_GraphicsFont, METH_O, NULL},
         { (char *)"GraphicsFont_swigregister", GraphicsFont_swigregister, METH_VARARGS, NULL},
         { (char *)"GraphicsFont_swiginit", GraphicsFont_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
+        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
+        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
+        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_Clone", (PyCFunction)_wrap_GraphicsPath_Clone, METH_O, NULL},
         { (char *)"GraphicsPath_MoveToPoint", _wrap_GraphicsPath_MoveToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddLineToPoint", _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddCurveToPoint", _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS, NULL},
@@ -39334,21 +39452,6 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsPath_GetBox", (PyCFunction)_wrap_GraphicsPath_GetBox, METH_O, NULL},
         { (char *)"GraphicsPath_Contains", _wrap_GraphicsPath_Contains, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_swigregister", GraphicsPath_swigregister, METH_VARARGS, NULL},
-        { (char *)"delete_GraphicsMatrix", (PyCFunction)_wrap_delete_GraphicsMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Clone", (PyCFunction)_wrap_GraphicsMatrix_Clone, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Concat", (PyCFunction) _wrap_GraphicsMatrix_Concat, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Copy", (PyCFunction) _wrap_GraphicsMatrix_Copy, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Set", (PyCFunction) _wrap_GraphicsMatrix_Set, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Invert", (PyCFunction)_wrap_GraphicsMatrix_Invert, METH_O, NULL},
-        { (char *)"GraphicsMatrix_IsEqual", (PyCFunction) _wrap_GraphicsMatrix_IsEqual, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_IsIdentity", (PyCFunction)_wrap_GraphicsMatrix_IsIdentity, METH_O, NULL},
-        { (char *)"GraphicsMatrix_Translate", (PyCFunction) _wrap_GraphicsMatrix_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Scale", (PyCFunction) _wrap_GraphicsMatrix_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_Rotate", (PyCFunction) _wrap_GraphicsMatrix_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformPoint", (PyCFunction) _wrap_GraphicsMatrix_TransformPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_TransformDistance", (PyCFunction) _wrap_GraphicsMatrix_TransformDistance, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsMatrix_GetNativeMatrix", (PyCFunction)_wrap_GraphicsMatrix_GetNativeMatrix, METH_O, NULL},
-        { (char *)"GraphicsMatrix_swigregister", GraphicsMatrix_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_GraphicsContext", (PyCFunction)_wrap_delete_GraphicsContext, METH_O, NULL},
         { (char *)"GraphicsContext_Create", _wrap_GraphicsContext_Create, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_CreateFromNative", (PyCFunction) _wrap_GraphicsContext_CreateFromNative, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -39369,6 +39472,9 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_Translate", (PyCFunction) _wrap_GraphicsContext_Translate, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Scale", (PyCFunction) _wrap_GraphicsContext_Scale, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_Rotate", (PyCFunction) _wrap_GraphicsContext_Rotate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ConcatTransform", (PyCFunction) _wrap_GraphicsContext_ConcatTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_SetTransform", (PyCFunction) _wrap_GraphicsContext_SetTransform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_GetTransform", (PyCFunction)_wrap_GraphicsContext_GetTransform, METH_O, NULL},
         { (char *)"GraphicsContext_SetPen", _wrap_GraphicsContext_SetPen, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetBrush", _wrap_GraphicsContext_SetBrush, METH_VARARGS, NULL},
         { (char *)"GraphicsContext_SetFont", _wrap_GraphicsContext_SetFont, METH_VARARGS, NULL},
@@ -41669,6 +41775,8 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPen",NullGraphicsPen_get, NullGraphicsPen_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsBrush",NullGraphicsBrush_get, NullGraphicsBrush_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsFont",NullGraphicsFont_get, NullGraphicsFont_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsMatrix",NullGraphicsMatrix_get, NullGraphicsMatrix_set);
+  SWIG_addvarlink(SWIG_globals(),(char*)"NullGraphicsPath",NullGraphicsPath_get, NullGraphicsPath_set);
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_NORMAL",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_NORMAL)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_TRANSPARENT",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "IMAGELIST_DRAW_SELECTED",SWIG_From_int(static_cast< int >(wxIMAGELIST_DRAW_SELECTED)));
index 592182271ca1f14c3293ffc0192aa5d8e855a244..4336192ba129a40929c4f594f777719e2b3f2bd7 100644 (file)
@@ -1435,6 +1435,49 @@ class FloatingPane(_windows.MiniFrame):
 
 _aui.FloatingPane_swigregister(FloatingPane)
 
+class TabArt(object):
+    """Proxy of C++ TabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _aui.delete_TabArt
+    __del__ = lambda self : None;
+    def DrawBackground(*args, **kwargs):
+        """DrawBackground(self, DC dc, Rect rect)"""
+        return _aui.TabArt_DrawBackground(*args, **kwargs)
+
+    def DrawTab(*args, **kwargs):
+        """
+        DrawTab(self, DC dc, Rect in_rect, String caption, bool active, Rect out_rect, 
+            int x_extent)
+        """
+        return _aui.TabArt_DrawTab(*args, **kwargs)
+
+    def SetNormalFont(*args, **kwargs):
+        """SetNormalFont(self, Font font)"""
+        return _aui.TabArt_SetNormalFont(*args, **kwargs)
+
+    def SetSelectedFont(*args, **kwargs):
+        """SetSelectedFont(self, Font font)"""
+        return _aui.TabArt_SetSelectedFont(*args, **kwargs)
+
+    def SetMeasuringFont(*args, **kwargs):
+        """SetMeasuringFont(self, Font font)"""
+        return _aui.TabArt_SetMeasuringFont(*args, **kwargs)
+
+_aui.TabArt_swigregister(TabArt)
+
+class DefaultTabArt(TabArt):
+    """Proxy of C++ DefaultTabArt class"""
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self) -> DefaultTabArt"""
+        _aui.DefaultTabArt_swiginit(self,_aui.new_DefaultTabArt(*args, **kwargs))
+    __swig_destroy__ = _aui.delete_DefaultTabArt
+    __del__ = lambda self : None;
+_aui.DefaultTabArt_swigregister(DefaultTabArt)
+
 class AuiNotebookEvent(_core.NotifyEvent):
     """Proxy of C++ AuiNotebookEvent class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -1488,6 +1531,7 @@ class AuiTabContainerButton(object):
     __repr__ = _swig_repr
     id = property(_aui.AuiTabContainerButton_id_get, _aui.AuiTabContainerButton_id_set)
     cur_state = property(_aui.AuiTabContainerButton_cur_state_get, _aui.AuiTabContainerButton_cur_state_set)
+    location = property(_aui.AuiTabContainerButton_location_get, _aui.AuiTabContainerButton_location_set)
     bitmap = property(_aui.AuiTabContainerButton_bitmap_get, _aui.AuiTabContainerButton_bitmap_set)
     rect = property(_aui.AuiTabContainerButton_rect_get, _aui.AuiTabContainerButton_rect_set)
 _aui.AuiTabContainerButton_swigregister(AuiTabContainerButton)
@@ -1501,6 +1545,14 @@ class AuiTabContainer(object):
         _aui.AuiTabContainer_swiginit(self,_aui.new_AuiTabContainer(*args, **kwargs))
     __swig_destroy__ = _aui.delete_AuiTabContainer
     __del__ = lambda self : None;
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiTabContainer_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiTabContainer_GetArtProvider(*args, **kwargs)
+
     def AddPage(*args, **kwargs):
         """AddPage(self, Window page, AuiNotebookPage info) -> bool"""
         return _aui.AuiTabContainer_AddPage(*args, **kwargs)
@@ -1577,7 +1629,7 @@ class AuiTabContainer(object):
         return _aui.AuiTabContainer_SetRect(*args, **kwargs)
 
     def AddButton(*args, **kwargs):
-        """AddButton(self, int id, Bitmap bmp)"""
+        """AddButton(self, int id, int location, Bitmap bmp)"""
         return _aui.AuiTabContainer_AddButton(*args, **kwargs)
 
     ActivePage = property(GetActivePage,SetActivePage,doc="See `GetActivePage` and `SetActivePage`") 
@@ -1659,6 +1711,14 @@ class AuiMultiNotebook(_core.Control):
         """GetPage(self, size_t page_idx) -> Window"""
         return _aui.AuiMultiNotebook_GetPage(*args, **kwargs)
 
+    def SetArtProvider(*args, **kwargs):
+        """SetArtProvider(self, TabArt art)"""
+        return _aui.AuiMultiNotebook_SetArtProvider(*args, **kwargs)
+
+    def GetArtProvider(*args, **kwargs):
+        """GetArtProvider(self) -> TabArt"""
+        return _aui.AuiMultiNotebook_GetArtProvider(*args, **kwargs)
+
     PageCount = property(GetPageCount,doc="See `GetPageCount`") 
     Selection = property(GetSelection,SetSelection,doc="See `GetSelection` and `SetSelection`") 
 _aui.AuiMultiNotebook_swigregister(AuiMultiNotebook)
@@ -1693,5 +1753,16 @@ class PyDockArt(DefaultDockArt):
     __repr__ = _swig_repr
 _aui.PyDockArt_swigregister(PyDockArt)
 
+class PyTabArt(DefaultTabArt):
+    """
+    This version of the `TabArt` class has been instrumented to be
+    subclassable in Python and to reflect all calls to the C++ base class
+    methods to the Python methods implemented in the derived class.
+    """
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+_aui.PyTabArt_swigregister(PyTabArt)
+
 
 
index a46115a997c76115af473c89123f3d44e161bdfe..b5850e49e781600a3db89cada3eb6b324d196f7b 100644 (file)
@@ -2547,149 +2547,152 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDC swig_types[81]
 #define SWIGTYPE_p_wxDateEvent swig_types[82]
 #define SWIGTYPE_p_wxDefaultDockArt swig_types[83]
-#define SWIGTYPE_p_wxDialog swig_types[84]
-#define SWIGTYPE_p_wxDirDialog swig_types[85]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[86]
-#define SWIGTYPE_p_wxDockArt swig_types[87]
-#define SWIGTYPE_p_wxDockInfo swig_types[88]
-#define SWIGTYPE_p_wxDockUIPart swig_types[89]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[90]
-#define SWIGTYPE_p_wxDuplexMode swig_types[91]
-#define SWIGTYPE_p_wxEraseEvent swig_types[92]
-#define SWIGTYPE_p_wxEvent swig_types[93]
-#define SWIGTYPE_p_wxEvtHandler swig_types[94]
-#define SWIGTYPE_p_wxFSFile swig_types[95]
-#define SWIGTYPE_p_wxFileDialog swig_types[96]
-#define SWIGTYPE_p_wxFileSystem swig_types[97]
-#define SWIGTYPE_p_wxFindDialogEvent swig_types[98]
-#define SWIGTYPE_p_wxFindReplaceData swig_types[99]
-#define SWIGTYPE_p_wxFindReplaceDialog swig_types[100]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[101]
-#define SWIGTYPE_p_wxFloatingPane swig_types[102]
-#define SWIGTYPE_p_wxFocusEvent swig_types[103]
-#define SWIGTYPE_p_wxFont swig_types[104]
-#define SWIGTYPE_p_wxFontData swig_types[105]
-#define SWIGTYPE_p_wxFontDialog swig_types[106]
-#define SWIGTYPE_p_wxFrame swig_types[107]
-#define SWIGTYPE_p_wxFrameManager swig_types[108]
-#define SWIGTYPE_p_wxFrameManagerEvent swig_types[109]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[110]
-#define SWIGTYPE_p_wxGIFHandler swig_types[111]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[112]
-#define SWIGTYPE_p_wxGridSizer swig_types[113]
-#define SWIGTYPE_p_wxICOHandler swig_types[114]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[115]
-#define SWIGTYPE_p_wxIdleEvent swig_types[116]
-#define SWIGTYPE_p_wxImage swig_types[117]
-#define SWIGTYPE_p_wxImageHandler swig_types[118]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[119]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[120]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[121]
-#define SWIGTYPE_p_wxKeyEvent swig_types[122]
-#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[123]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[124]
-#define SWIGTYPE_p_wxMDIChildFrame swig_types[125]
-#define SWIGTYPE_p_wxMDIClientWindow swig_types[126]
-#define SWIGTYPE_p_wxMDIParentFrame swig_types[127]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[128]
-#define SWIGTYPE_p_wxMenu swig_types[129]
-#define SWIGTYPE_p_wxMenuBar swig_types[130]
-#define SWIGTYPE_p_wxMenuEvent swig_types[131]
-#define SWIGTYPE_p_wxMenuItem swig_types[132]
-#define SWIGTYPE_p_wxMessageDialog swig_types[133]
-#define SWIGTYPE_p_wxMiniFrame swig_types[134]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[135]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[136]
-#define SWIGTYPE_p_wxMouseEvent swig_types[137]
-#define SWIGTYPE_p_wxMoveEvent swig_types[138]
-#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[139]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[140]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[141]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[142]
-#define SWIGTYPE_p_wxNumberEntryDialog swig_types[143]
-#define SWIGTYPE_p_wxObject swig_types[144]
-#define SWIGTYPE_p_wxPCXHandler swig_types[145]
-#define SWIGTYPE_p_wxPNGHandler swig_types[146]
-#define SWIGTYPE_p_wxPNMHandler swig_types[147]
-#define SWIGTYPE_p_wxPageSetupDialog swig_types[148]
-#define SWIGTYPE_p_wxPageSetupDialogData swig_types[149]
-#define SWIGTYPE_p_wxPaintEvent swig_types[150]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[151]
-#define SWIGTYPE_p_wxPaneButton swig_types[152]
-#define SWIGTYPE_p_wxPaneButtonArray swig_types[153]
-#define SWIGTYPE_p_wxPaneInfo swig_types[154]
-#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[155]
-#define SWIGTYPE_p_wxPanel swig_types[156]
-#define SWIGTYPE_p_wxPaperSize swig_types[157]
-#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[158]
-#define SWIGTYPE_p_wxPoint swig_types[159]
-#define SWIGTYPE_p_wxPopupWindow swig_types[160]
-#define SWIGTYPE_p_wxPreviewCanvas swig_types[161]
-#define SWIGTYPE_p_wxPreviewControlBar swig_types[162]
-#define SWIGTYPE_p_wxPreviewFrame swig_types[163]
-#define SWIGTYPE_p_wxPrintData swig_types[164]
-#define SWIGTYPE_p_wxPrintDialog swig_types[165]
-#define SWIGTYPE_p_wxPrintDialogData swig_types[166]
-#define SWIGTYPE_p_wxPrintPreview swig_types[167]
-#define SWIGTYPE_p_wxPrinter swig_types[168]
-#define SWIGTYPE_p_wxProgressDialog swig_types[169]
-#define SWIGTYPE_p_wxPyApp swig_types[170]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[171]
-#define SWIGTYPE_p_wxPyDockArt swig_types[172]
-#define SWIGTYPE_p_wxPyEvent swig_types[173]
-#define SWIGTYPE_p_wxPyHtmlListBox swig_types[174]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[175]
-#define SWIGTYPE_p_wxPyPanel swig_types[176]
-#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[177]
-#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[178]
-#define SWIGTYPE_p_wxPyPreviewFrame swig_types[179]
-#define SWIGTYPE_p_wxPyPrintPreview swig_types[180]
-#define SWIGTYPE_p_wxPyPrintout swig_types[181]
-#define SWIGTYPE_p_wxPyScrolledWindow swig_types[182]
-#define SWIGTYPE_p_wxPySizer swig_types[183]
-#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[184]
-#define SWIGTYPE_p_wxPyVListBox swig_types[185]
-#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[186]
-#define SWIGTYPE_p_wxPyValidator swig_types[187]
-#define SWIGTYPE_p_wxPyWindow swig_types[188]
-#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[189]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[190]
-#define SWIGTYPE_p_wxRect swig_types[191]
-#define SWIGTYPE_p_wxSashEvent swig_types[192]
-#define SWIGTYPE_p_wxSashLayoutWindow swig_types[193]
-#define SWIGTYPE_p_wxSashWindow swig_types[194]
-#define SWIGTYPE_p_wxScrollEvent swig_types[195]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[196]
-#define SWIGTYPE_p_wxScrolledWindow swig_types[197]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[198]
-#define SWIGTYPE_p_wxShowEvent swig_types[199]
-#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[200]
-#define SWIGTYPE_p_wxSize swig_types[201]
-#define SWIGTYPE_p_wxSizeEvent swig_types[202]
-#define SWIGTYPE_p_wxSizer swig_types[203]
-#define SWIGTYPE_p_wxSizerItem swig_types[204]
-#define SWIGTYPE_p_wxSplashScreen swig_types[205]
-#define SWIGTYPE_p_wxSplashScreenWindow swig_types[206]
-#define SWIGTYPE_p_wxSplitterEvent swig_types[207]
-#define SWIGTYPE_p_wxSplitterWindow swig_types[208]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[209]
-#define SWIGTYPE_p_wxStatusBar swig_types[210]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[211]
-#define SWIGTYPE_p_wxString swig_types[212]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[213]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[214]
-#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[215]
-#define SWIGTYPE_p_wxTextEntryDialog swig_types[216]
-#define SWIGTYPE_p_wxTipWindow swig_types[217]
-#define SWIGTYPE_p_wxTopLevelWindow swig_types[218]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[219]
-#define SWIGTYPE_p_wxValidator swig_types[220]
-#define SWIGTYPE_p_wxWindow swig_types[221]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[222]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[223]
-#define SWIGTYPE_p_wxXPMHandler swig_types[224]
-static swig_type_info *swig_types[226];
-static swig_module_info swig_module = {swig_types, 225, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDefaultTabArt swig_types[84]
+#define SWIGTYPE_p_wxDialog swig_types[85]
+#define SWIGTYPE_p_wxDirDialog swig_types[86]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[87]
+#define SWIGTYPE_p_wxDockArt swig_types[88]
+#define SWIGTYPE_p_wxDockInfo swig_types[89]
+#define SWIGTYPE_p_wxDockUIPart swig_types[90]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[91]
+#define SWIGTYPE_p_wxDuplexMode swig_types[92]
+#define SWIGTYPE_p_wxEraseEvent swig_types[93]
+#define SWIGTYPE_p_wxEvent swig_types[94]
+#define SWIGTYPE_p_wxEvtHandler swig_types[95]
+#define SWIGTYPE_p_wxFSFile swig_types[96]
+#define SWIGTYPE_p_wxFileDialog swig_types[97]
+#define SWIGTYPE_p_wxFileSystem swig_types[98]
+#define SWIGTYPE_p_wxFindDialogEvent swig_types[99]
+#define SWIGTYPE_p_wxFindReplaceData swig_types[100]
+#define SWIGTYPE_p_wxFindReplaceDialog swig_types[101]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[102]
+#define SWIGTYPE_p_wxFloatingPane swig_types[103]
+#define SWIGTYPE_p_wxFocusEvent swig_types[104]
+#define SWIGTYPE_p_wxFont swig_types[105]
+#define SWIGTYPE_p_wxFontData swig_types[106]
+#define SWIGTYPE_p_wxFontDialog swig_types[107]
+#define SWIGTYPE_p_wxFrame swig_types[108]
+#define SWIGTYPE_p_wxFrameManager swig_types[109]
+#define SWIGTYPE_p_wxFrameManagerEvent swig_types[110]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[111]
+#define SWIGTYPE_p_wxGIFHandler swig_types[112]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[113]
+#define SWIGTYPE_p_wxGridSizer swig_types[114]
+#define SWIGTYPE_p_wxICOHandler swig_types[115]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[116]
+#define SWIGTYPE_p_wxIdleEvent swig_types[117]
+#define SWIGTYPE_p_wxImage swig_types[118]
+#define SWIGTYPE_p_wxImageHandler swig_types[119]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[120]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[121]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[122]
+#define SWIGTYPE_p_wxKeyEvent swig_types[123]
+#define SWIGTYPE_p_wxLayoutAlgorithm swig_types[124]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[125]
+#define SWIGTYPE_p_wxMDIChildFrame swig_types[126]
+#define SWIGTYPE_p_wxMDIClientWindow swig_types[127]
+#define SWIGTYPE_p_wxMDIParentFrame swig_types[128]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[129]
+#define SWIGTYPE_p_wxMenu swig_types[130]
+#define SWIGTYPE_p_wxMenuBar swig_types[131]
+#define SWIGTYPE_p_wxMenuEvent swig_types[132]
+#define SWIGTYPE_p_wxMenuItem swig_types[133]
+#define SWIGTYPE_p_wxMessageDialog swig_types[134]
+#define SWIGTYPE_p_wxMiniFrame swig_types[135]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[136]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[137]
+#define SWIGTYPE_p_wxMouseEvent swig_types[138]
+#define SWIGTYPE_p_wxMoveEvent swig_types[139]
+#define SWIGTYPE_p_wxMultiChoiceDialog swig_types[140]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[141]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[142]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[143]
+#define SWIGTYPE_p_wxNumberEntryDialog swig_types[144]
+#define SWIGTYPE_p_wxObject swig_types[145]
+#define SWIGTYPE_p_wxPCXHandler swig_types[146]
+#define SWIGTYPE_p_wxPNGHandler swig_types[147]
+#define SWIGTYPE_p_wxPNMHandler swig_types[148]
+#define SWIGTYPE_p_wxPageSetupDialog swig_types[149]
+#define SWIGTYPE_p_wxPageSetupDialogData swig_types[150]
+#define SWIGTYPE_p_wxPaintEvent swig_types[151]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[152]
+#define SWIGTYPE_p_wxPaneButton swig_types[153]
+#define SWIGTYPE_p_wxPaneButtonArray swig_types[154]
+#define SWIGTYPE_p_wxPaneInfo swig_types[155]
+#define SWIGTYPE_p_wxPaneInfoPtrArray swig_types[156]
+#define SWIGTYPE_p_wxPanel swig_types[157]
+#define SWIGTYPE_p_wxPaperSize swig_types[158]
+#define SWIGTYPE_p_wxPasswordEntryDialog swig_types[159]
+#define SWIGTYPE_p_wxPoint swig_types[160]
+#define SWIGTYPE_p_wxPopupWindow swig_types[161]
+#define SWIGTYPE_p_wxPreviewCanvas swig_types[162]
+#define SWIGTYPE_p_wxPreviewControlBar swig_types[163]
+#define SWIGTYPE_p_wxPreviewFrame swig_types[164]
+#define SWIGTYPE_p_wxPrintData swig_types[165]
+#define SWIGTYPE_p_wxPrintDialog swig_types[166]
+#define SWIGTYPE_p_wxPrintDialogData swig_types[167]
+#define SWIGTYPE_p_wxPrintPreview swig_types[168]
+#define SWIGTYPE_p_wxPrinter swig_types[169]
+#define SWIGTYPE_p_wxProgressDialog swig_types[170]
+#define SWIGTYPE_p_wxPyApp swig_types[171]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[172]
+#define SWIGTYPE_p_wxPyDockArt swig_types[173]
+#define SWIGTYPE_p_wxPyEvent swig_types[174]
+#define SWIGTYPE_p_wxPyHtmlListBox swig_types[175]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[176]
+#define SWIGTYPE_p_wxPyPanel swig_types[177]
+#define SWIGTYPE_p_wxPyPopupTransientWindow swig_types[178]
+#define SWIGTYPE_p_wxPyPreviewControlBar swig_types[179]
+#define SWIGTYPE_p_wxPyPreviewFrame swig_types[180]
+#define SWIGTYPE_p_wxPyPrintPreview swig_types[181]
+#define SWIGTYPE_p_wxPyPrintout swig_types[182]
+#define SWIGTYPE_p_wxPyScrolledWindow swig_types[183]
+#define SWIGTYPE_p_wxPySizer swig_types[184]
+#define SWIGTYPE_p_wxPyTabArt swig_types[185]
+#define SWIGTYPE_p_wxPyTaskBarIcon swig_types[186]
+#define SWIGTYPE_p_wxPyVListBox swig_types[187]
+#define SWIGTYPE_p_wxPyVScrolledWindow swig_types[188]
+#define SWIGTYPE_p_wxPyValidator swig_types[189]
+#define SWIGTYPE_p_wxPyWindow swig_types[190]
+#define SWIGTYPE_p_wxQueryLayoutInfoEvent swig_types[191]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[192]
+#define SWIGTYPE_p_wxRect swig_types[193]
+#define SWIGTYPE_p_wxSashEvent swig_types[194]
+#define SWIGTYPE_p_wxSashLayoutWindow swig_types[195]
+#define SWIGTYPE_p_wxSashWindow swig_types[196]
+#define SWIGTYPE_p_wxScrollEvent swig_types[197]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[198]
+#define SWIGTYPE_p_wxScrolledWindow swig_types[199]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[200]
+#define SWIGTYPE_p_wxShowEvent swig_types[201]
+#define SWIGTYPE_p_wxSingleChoiceDialog swig_types[202]
+#define SWIGTYPE_p_wxSize swig_types[203]
+#define SWIGTYPE_p_wxSizeEvent swig_types[204]
+#define SWIGTYPE_p_wxSizer swig_types[205]
+#define SWIGTYPE_p_wxSizerItem swig_types[206]
+#define SWIGTYPE_p_wxSplashScreen swig_types[207]
+#define SWIGTYPE_p_wxSplashScreenWindow swig_types[208]
+#define SWIGTYPE_p_wxSplitterEvent swig_types[209]
+#define SWIGTYPE_p_wxSplitterWindow swig_types[210]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[211]
+#define SWIGTYPE_p_wxStatusBar swig_types[212]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[213]
+#define SWIGTYPE_p_wxString swig_types[214]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[215]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[216]
+#define SWIGTYPE_p_wxTabArt swig_types[217]
+#define SWIGTYPE_p_wxTaskBarIconEvent swig_types[218]
+#define SWIGTYPE_p_wxTextEntryDialog swig_types[219]
+#define SWIGTYPE_p_wxTipWindow swig_types[220]
+#define SWIGTYPE_p_wxTopLevelWindow swig_types[221]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[222]
+#define SWIGTYPE_p_wxValidator swig_types[223]
+#define SWIGTYPE_p_wxWindow swig_types[224]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[225]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[226]
+#define SWIGTYPE_p_wxXPMHandler swig_types[227]
+static swig_type_info *swig_types[229];
+static swig_module_info swig_module = {swig_types, 228, 0, 0, 0, 0};
 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
 
@@ -2900,7 +2903,7 @@ SWIG_From_size_t  (size_t value)
 }
 
 
-// A wxDocArt class that knows how to forward virtuals to Python methods  
+// A wxDocArt class that knows how to forward virtuals to Python methods
 class wxPyDockArt :  public wxDefaultDockArt
 {
     wxPyDockArt() : wxDefaultDockArt() {}
@@ -3062,6 +3065,88 @@ IMP_PYCALLBACK_COLOUR_INT(wxPyDockArt, wxDefaultDockArt, GetColour);
 IMP_PYCALLBACK__INTCOLOUR(wxPyDockArt, wxDefaultDockArt, SetColour);
 
 
+
+// A wxTabArt class that knows how to forward virtuals to Python methods
+class wxPyTabArt :  public wxDefaultTabArt
+{
+    wxPyTabArt() : wxDefaultTabArt() {}
+
+    virtual void DrawBackground( wxDC* dc,
+                                 const wxRect& rect )
+    {
+        bool found;
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawBackground"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OO)", odc, orect));
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawBackground(dc, rect);
+    }
+
+    virtual void DrawTab( wxDC* dc,
+                          const wxRect& in_rect,
+                          const wxString& caption,
+                          bool active,
+                          wxRect* out_rect,
+                          int* x_extent)
+    {
+        bool found;
+        const char* errmsg = "DrawTab should return a sequence containing (out_rect, x_extent)";
+        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+        if ((found = wxPyCBH_findCallback(m_myInst, "DrawTab"))) {
+            PyObject* odc = wxPyMake_wxObject(dc, false);
+            PyObject* orect = wxPyConstructObject((void*)&in_rect, wxT("wxRect"), 0);
+            PyObject* otext = wx2PyString(caption);
+            PyObject* ro;
+            ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("(OOOi)", odc, orect, otext, (int)active));
+            if (ro) {
+                if (PySequence_Check(ro) && PyObject_Length(ro) == 2) {
+                    PyObject* o1 = PySequence_GetItem(ro, 0);
+                    PyObject* o2 = PySequence_GetItem(ro, 1);
+                    if (!wxRect_helper(o1, &out_rect)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else if (!PyInt_Check(o2)) 
+                        PyErr_SetString(PyExc_TypeError, errmsg);
+                    else
+                        *x_extent = PyInt_AsLong(o2);
+                    
+                    Py_DECREF(o1);
+                    Py_DECREF(o2);
+                }
+                else {
+                    PyErr_SetString(PyExc_TypeError, errmsg);
+                }
+                Py_DECREF(ro);
+            }
+
+            Py_DECREF(odc);
+            Py_DECREF(orect);
+            Py_DECREF(otext);
+        }
+        wxPyEndBlockThreads(blocked);
+        if (!found)
+            wxDefaultTabArt::DrawTab(dc, in_rect, caption, active, out_rect, x_extent);
+    }
+
+
+    DEC_PYCALLBACK__FONT(SetNormalFont);
+    DEC_PYCALLBACK__FONT(SetSelectedFont);
+    DEC_PYCALLBACK__FONT(SetMeasuringFont);
+
+    PYPRIVATE;
+};
+
+
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetNormalFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetSelectedFont);
+IMP_PYCALLBACK__FONT(wxPyTabArt, wxDefaultTabArt, SetMeasuringFont);
+
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -10900,6 +10985,354 @@ SWIGINTERN PyObject *FloatingPane_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObj
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_delete_TabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_TabArt" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawBackground(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:TabArt_DrawBackground",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawBackground" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawBackground" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawBackground(arg2,(wxRect const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_DrawTab(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxDC *arg2 = (wxDC *) 0 ;
+  wxRect *arg3 = 0 ;
+  wxString *arg4 = 0 ;
+  bool arg5 ;
+  wxRect *arg6 = (wxRect *) 0 ;
+  int *arg7 = (int *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxRect temp3 ;
+  bool temp4 = false ;
+  bool val5 ;
+  int ecode5 = 0 ;
+  void *argp6 = 0 ;
+  int res6 = 0 ;
+  void *argp7 = 0 ;
+  int res7 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dc",(char *) "in_rect",(char *) "caption",(char *) "active",(char *) "out_rect",(char *) "x_extent", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:TabArt_DrawTab",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_DrawTab" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxDC, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_DrawTab" "', expected argument " "2"" of type '" "wxDC *""'"); 
+  }
+  arg2 = reinterpret_cast< wxDC * >(argp2);
+  {
+    arg3 = &temp3;
+    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+  }
+  {
+    arg4 = wxString_in_helper(obj3);
+    if (arg4 == NULL) SWIG_fail;
+    temp4 = true;
+  }
+  ecode5 = SWIG_AsVal_bool(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "TabArt_DrawTab" "', expected argument " "5"" of type '" "bool""'");
+  } 
+  arg5 = static_cast< bool >(val5);
+  res6 = SWIG_ConvertPtr(obj5, &argp6,SWIGTYPE_p_wxRect, 0 |  0 );
+  if (!SWIG_IsOK(res6)) {
+    SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "TabArt_DrawTab" "', expected argument " "6"" of type '" "wxRect *""'"); 
+  }
+  arg6 = reinterpret_cast< wxRect * >(argp6);
+  res7 = SWIG_ConvertPtr(obj6, &argp7,SWIGTYPE_p_int, 0 |  0 );
+  if (!SWIG_IsOK(res7)) {
+    SWIG_exception_fail(SWIG_ArgError(res7), "in method '" "TabArt_DrawTab" "', expected argument " "7"" of type '" "int *""'"); 
+  }
+  arg7 = reinterpret_cast< int * >(argp7);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->DrawTab(arg2,(wxRect const &)*arg3,(wxString const &)*arg4,arg5,arg6,arg7);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp4)
+    delete arg4;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetNormalFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetNormalFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetNormalFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetNormalFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetNormalFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetSelectedFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetSelectedFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetSelectedFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetSelectedFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetSelectedFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_TabArt_SetMeasuringFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTabArt *arg1 = (wxTabArt *) 0 ;
+  wxFont *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TabArt_SetMeasuringFont",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "1"" of type '" "wxTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTabArt * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "TabArt_SetMeasuringFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetMeasuringFont((wxFont const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *TabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_new_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_DefaultTabArt",0,0,0)) SWIG_fail;
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDefaultTabArt *)new wxDefaultTabArt();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DefaultTabArt(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDefaultTabArt *arg1 = (wxDefaultTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxDefaultTabArt, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DefaultTabArt" "', expected argument " "1"" of type '" "wxDefaultTabArt *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDefaultTabArt * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DefaultTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDefaultTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DefaultTabArt_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_AuiNotebookEvent(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxEventType arg1 = (wxEventType) wxEVT_NULL ;
@@ -11587,6 +12020,59 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"AuiTabContainerButton_location_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainerButton_location_set" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  if (arg1) (arg1)->location = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainerButton_location_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
+  int result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainerButton, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainerButton_location_get" "', expected argument " "1"" of type '" "wxAuiTabContainerButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainerButton * >(argp1);
+  result = (int) ((arg1)->location);
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainerButton_bitmap_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxAuiTabContainerButton *arg1 = (wxAuiTabContainerButton *) 0 ;
@@ -11746,6 +12232,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiTabContainer_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiTabContainer_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiTabContainer_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiTabContainer_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiTabContainer * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_AuiTabContainer_AddPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
@@ -12546,21 +13098,25 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
   PyObject *resultobj = 0;
   wxAuiTabContainer *arg1 = (wxAuiTabContainer *) 0 ;
   int arg2 ;
-  wxBitmap *arg3 = 0 ;
+  int arg3 ;
+  wxBitmap *arg4 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   int val2 ;
   int ecode2 = 0 ;
-  void *argp3 = 0 ;
-  int res3 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  void *argp4 = 0 ;
+  int res4 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "id",(char *) "bmp", NULL 
+    (char *) "self",(char *) "id",(char *) "location",(char *) "bmp", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:AuiTabContainer_AddButton",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiTabContainer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiTabContainer_AddButton" "', expected argument " "1"" of type '" "wxAuiTabContainer *""'"); 
@@ -12571,17 +13127,22 @@ SWIGINTERN PyObject *_wrap_AuiTabContainer_AddButton(PyObject *SWIGUNUSEDPARM(se
     SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "AuiTabContainer_AddButton" "', expected argument " "2"" of type '" "int""'");
   } 
   arg2 = static_cast< int >(val2);
-  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxBitmap,  0  | 0);
-  if (!SWIG_IsOK(res3)) {
-    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxBitmap,  0  | 0);
+  if (!SWIG_IsOK(res4)) {
+    SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  if (!argp3) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "3"" of type '" "wxBitmap const &""'"); 
+  if (!argp4) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "AuiTabContainer_AddButton" "', expected argument " "4"" of type '" "wxBitmap const &""'"); 
   }
-  arg3 = reinterpret_cast< wxBitmap * >(argp3);
+  arg4 = reinterpret_cast< wxBitmap * >(argp4);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->AddButton(arg2,(wxBitmap const &)*arg3);
+    (arg1)->AddButton(arg2,arg3,(wxBitmap const &)*arg4);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -13309,6 +13870,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_SetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *arg2 = (wxTabArt *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "art", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:AuiMultiNotebook_SetArtProvider",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxTabArt, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "AuiMultiNotebook_SetArtProvider" "', expected argument " "2"" of type '" "wxTabArt *""'"); 
+  }
+  arg2 = reinterpret_cast< wxTabArt * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetArtProvider(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_AuiMultiNotebook_GetArtProvider(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxAuiMultiNotebook *arg1 = (wxAuiMultiNotebook *) 0 ;
+  wxTabArt *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxAuiMultiNotebook, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AuiMultiNotebook_GetArtProvider" "', expected argument " "1"" of type '" "wxAuiMultiNotebook *""'"); 
+  }
+  arg1 = reinterpret_cast< wxAuiMultiNotebook * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxTabArt *)(arg1)->GetArtProvider();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxTabArt, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *AuiMultiNotebook_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -13327,6 +13954,13 @@ SWIGINTERN PyObject *PyDockArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyOb
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *PyTabArt_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxPyTabArt, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
 static PyMethodDef SwigMethods[] = {
         { (char *)"new_PaneInfo", (PyCFunction)_wrap_new_PaneInfo, METH_NOARGS, NULL},
         { (char *)"delete_PaneInfo", (PyCFunction)_wrap_delete_PaneInfo, METH_O, NULL},
@@ -13563,6 +14197,17 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"FloatingPane_SetPaneWindow", (PyCFunction) _wrap_FloatingPane_SetPaneWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"FloatingPane_swigregister", FloatingPane_swigregister, METH_VARARGS, NULL},
         { (char *)"FloatingPane_swiginit", FloatingPane_swiginit, METH_VARARGS, NULL},
+        { (char *)"delete_TabArt", (PyCFunction)_wrap_delete_TabArt, METH_O, NULL},
+        { (char *)"TabArt_DrawBackground", (PyCFunction) _wrap_TabArt_DrawBackground, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_DrawTab", (PyCFunction) _wrap_TabArt_DrawTab, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetNormalFont", (PyCFunction) _wrap_TabArt_SetNormalFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetSelectedFont", (PyCFunction) _wrap_TabArt_SetSelectedFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_SetMeasuringFont", (PyCFunction) _wrap_TabArt_SetMeasuringFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"TabArt_swigregister", TabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DefaultTabArt", (PyCFunction)_wrap_new_DefaultTabArt, METH_NOARGS, NULL},
+        { (char *)"delete_DefaultTabArt", (PyCFunction)_wrap_delete_DefaultTabArt, METH_O, NULL},
+        { (char *)"DefaultTabArt_swigregister", DefaultTabArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"DefaultTabArt_swiginit", DefaultTabArt_swiginit, METH_VARARGS, NULL},
         { (char *)"new_AuiNotebookEvent", (PyCFunction) _wrap_new_AuiNotebookEvent, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetSelection, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiNotebookEvent_SetOldSelection", (PyCFunction) _wrap_AuiNotebookEvent_SetOldSelection, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13589,6 +14234,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_id_get", (PyCFunction)_wrap_AuiTabContainerButton_id_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_cur_state_set", _wrap_AuiTabContainerButton_cur_state_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_cur_state_get", (PyCFunction)_wrap_AuiTabContainerButton_cur_state_get, METH_O, NULL},
+        { (char *)"AuiTabContainerButton_location_set", _wrap_AuiTabContainerButton_location_set, METH_VARARGS, NULL},
+        { (char *)"AuiTabContainerButton_location_get", (PyCFunction)_wrap_AuiTabContainerButton_location_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_bitmap_set", _wrap_AuiTabContainerButton_bitmap_set, METH_VARARGS, NULL},
         { (char *)"AuiTabContainerButton_bitmap_get", (PyCFunction)_wrap_AuiTabContainerButton_bitmap_get, METH_O, NULL},
         { (char *)"AuiTabContainerButton_rect_set", _wrap_AuiTabContainerButton_rect_set, METH_VARARGS, NULL},
@@ -13596,6 +14243,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiTabContainerButton_swigregister", AuiTabContainerButton_swigregister, METH_VARARGS, NULL},
         { (char *)"new_AuiTabContainer", (PyCFunction)_wrap_new_AuiTabContainer, METH_NOARGS, NULL},
         { (char *)"delete_AuiTabContainer", (PyCFunction)_wrap_delete_AuiTabContainer, METH_O, NULL},
+        { (char *)"AuiTabContainer_SetArtProvider", (PyCFunction) _wrap_AuiTabContainer_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiTabContainer_GetArtProvider", (PyCFunction)_wrap_AuiTabContainer_GetArtProvider, METH_O, NULL},
         { (char *)"AuiTabContainer_AddPage", (PyCFunction) _wrap_AuiTabContainer_AddPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_InsertPage", (PyCFunction) _wrap_AuiTabContainer_InsertPage, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"AuiTabContainer_RemovePage", (PyCFunction) _wrap_AuiTabContainer_RemovePage, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -13632,9 +14281,12 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"AuiMultiNotebook_GetSelection", (PyCFunction)_wrap_AuiMultiNotebook_GetSelection, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPageCount", (PyCFunction)_wrap_AuiMultiNotebook_GetPageCount, METH_O, NULL},
         { (char *)"AuiMultiNotebook_GetPage", (PyCFunction) _wrap_AuiMultiNotebook_GetPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_SetArtProvider", (PyCFunction) _wrap_AuiMultiNotebook_SetArtProvider, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"AuiMultiNotebook_GetArtProvider", (PyCFunction)_wrap_AuiMultiNotebook_GetArtProvider, METH_O, NULL},
         { (char *)"AuiMultiNotebook_swigregister", AuiMultiNotebook_swigregister, METH_VARARGS, NULL},
         { (char *)"AuiMultiNotebook_swiginit", AuiMultiNotebook_swiginit, METH_VARARGS, NULL},
         { (char *)"PyDockArt_swigregister", PyDockArt_swigregister, METH_VARARGS, NULL},
+        { (char *)"PyTabArt_swigregister", PyTabArt_swigregister, METH_VARARGS, NULL},
         { NULL, NULL, 0, NULL }
 };
 
@@ -14841,9 +15493,18 @@ static void *_p_wxPyDockArtTo_p_wxDockArt(void *x) {
 static void *_p_wxPyDockArtTo_p_wxDefaultDockArt(void *x) {
     return (void *)((wxDefaultDockArt *)  ((wxPyDockArt *) x));
 }
+static void *_p_wxPyTabArtTo_p_wxDefaultTabArt(void *x) {
+    return (void *)((wxDefaultTabArt *)  ((wxPyTabArt *) x));
+}
+static void *_p_wxDefaultTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *)  ((wxDefaultTabArt *) x));
+}
+static void *_p_wxPyTabArtTo_p_wxTabArt(void *x) {
+    return (void *)((wxTabArt *) (wxDefaultTabArt *) ((wxPyTabArt *) x));
+}
 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0};
-static swig_type_info _swigt__p_int = {"_p_int", "int *|wxEventType *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxAuiTabContainerButton = {"_p_p_wxAuiTabContainerButton", "wxAuiTabContainerButton **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxWindow = {"_p_p_wxWindow", "wxWindow **", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_p_wxSplashScreen = {"_p_p_wxSplashScreen", 0, 0, 0, 0, 0};
@@ -14923,6 +15584,7 @@ static swig_type_info _swigt__p_wxControl = {"_p_wxControl", "wxControl *", 0, 0
 static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDefaultDockArt = {"_p_wxDefaultDockArt", "wxDefaultDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDefaultTabArt = {"_p_wxDefaultTabArt", "wxDefaultTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockArt = {"_p_wxDockArt", "wxDockArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockInfo = {"_p_wxDockInfo", "wxDockInfo *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDockUIPart = {"_p_wxDockUIPart", "wxDockUIPart *", 0, 0, (void*)0, 0};
@@ -15059,11 +15721,13 @@ static swig_type_info _swigt__p_wxPaneInfoPtrArray = {"_p_wxPaneInfoPtrArray", "
 static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPoint = {"_p_wxPoint", "wxPoint *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyDockArt = {"_p_wxPyDockArt", "wxPyDockArt *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPyTabArt = {"_p_wxPyTabArt", "wxPyTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRect = {"_p_wxRect", "wxRect *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSize = {"_p_wxSize", "wxSize *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", "wxSizer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", "wxSizerItem *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxString = {"_p_wxString", "wxString *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxTabArt = {"_p_wxTabArt", "wxTabArt *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxTopLevelWindow = {"_p_wxTopLevelWindow", "wxTopLevelWindow *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0};
 
@@ -15152,6 +15816,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDC,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDefaultDockArt,
+  &_swigt__p_wxDefaultTabArt,
   &_swigt__p_wxDialog,
   &_swigt__p_wxDirDialog,
   &_swigt__p_wxDisplayChangedEvent,
@@ -15252,6 +15917,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyPrintout,
   &_swigt__p_wxPyScrolledWindow,
   &_swigt__p_wxPySizer,
+  &_swigt__p_wxPyTabArt,
   &_swigt__p_wxPyTaskBarIcon,
   &_swigt__p_wxPyVListBox,
   &_swigt__p_wxPyVScrolledWindow,
@@ -15283,6 +15949,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxString,
   &_swigt__p_wxSysColourChangedEvent,
   &_swigt__p_wxTIFFHandler,
+  &_swigt__p_wxTabArt,
   &_swigt__p_wxTaskBarIconEvent,
   &_swigt__p_wxTextEntryDialog,
   &_swigt__p_wxTipWindow,
@@ -15377,6 +16044,7 @@ static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWit
 static swig_cast_info _swigc__p_wxControl[] = {  {&_swigt__p_wxControl, 0, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxControl, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxControl, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDefaultDockArt[] = {  {&_swigt__p_wxDefaultDockArt, 0, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDefaultDockArt, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDefaultTabArt[] = {  {&_swigt__p_wxDefaultTabArt, 0, 0, 0},  {&_swigt__p_wxPyTabArt, _p_wxPyTabArtTo_p_wxDefaultTabArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockArt[] = {  {&_swigt__p_wxDockArt, 0, 0, 0},  {&_swigt__p_wxDefaultDockArt, _p_wxDefaultDockArtTo_p_wxDockArt, 0, 0},  {&_swigt__p_wxPyDockArt, _p_wxPyDockArtTo_p_wxDockArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockInfo[] = {  {&_swigt__p_wxDockInfo, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDockUIPart[] = {  {&_swigt__p_wxDockUIPart, 0, 0, 0},{0, 0, 0, 0}};
@@ -15513,11 +16181,13 @@ static swig_cast_info _swigc__p_wxPaneInfoPtrArray[] = {  {&_swigt__p_wxPaneInfo
 static swig_cast_info _swigc__p_wxPaperSize[] = {  {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPoint[] = {  {&_swigt__p_wxPoint, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyDockArt[] = {  {&_swigt__p_wxPyDockArt, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyTabArt[] = {  {&_swigt__p_wxPyTabArt, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRect[] = {  {&_swigt__p_wxRect, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSize[] = {  {&_swigt__p_wxSize, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizer[] = {  {&_swigt__p_wxSizer, 0, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxSizer, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxSizer, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxSizerItem[] = {  {&_swigt__p_wxSizerItem, 0, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxSizerItem, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxString[] = {  {&_swigt__p_wxString, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTabArt[] = {  {&_swigt__p_wxTabArt, 0, 0, 0},  {&_swigt__p_wxDefaultTabArt, _p_wxDefaultTabArtTo_p_wxTabArt, 0, 0},  {&_swigt__p_wxPyTabArt, _p_wxPyTabArtTo_p_wxTabArt, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxTopLevelWindow[] = {  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, 0, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxTopLevelWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxTopLevelWindow, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxWindow[] = {  {&_swigt__p_wxSplashScreen, _p_wxSplashScreenTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMiniFrame, _p_wxMiniFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPanel, _p_wxPyPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFileDialog, _p_wxFileDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFindReplaceDialog, _p_wxFindReplaceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxProgressDialog, _p_wxProgressDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMessageDialog, _p_wxMessageDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxNumberEntryDialog, _p_wxNumberEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPasswordEntryDialog, _p_wxPasswordEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTextEntryDialog, _p_wxTextEntryDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSingleChoiceDialog, _p_wxSingleChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMultiChoiceDialog, _p_wxMultiChoiceDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPanel, _p_wxPanelTo_p_wxWindow, 0, 0},  {&_swigt__p_wxStatusBar, _p_wxStatusBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSashLayoutWindow, _p_wxSashLayoutWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxScrolledWindow, _p_wxScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTopLevelWindow, _p_wxTopLevelWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplashScreenWindow, _p_wxSplashScreenWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSplitterWindow, _p_wxSplitterWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxSashWindow, _p_wxSashWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIClientWindow, _p_wxMDIClientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyScrolledWindow, _p_wxPyScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxWindow, 0, 0, 0},  {&_swigt__p_wxPopupWindow, _p_wxPopupWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPopupTransientWindow, _p_wxPyPopupTransientWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxTipWindow, _p_wxTipWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVScrolledWindow, _p_wxPyVScrolledWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewFrame, _p_wxPyPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewFrame, _p_wxPreviewFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIChildFrame, _p_wxMDIChildFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyWindow, _p_wxPyWindowTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewCanvas, _p_wxPreviewCanvasTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFloatingPane, _p_wxFloatingPaneTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyHtmlListBox, _p_wxPyHtmlListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyVListBox, _p_wxPyVListBoxTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiMultiNotebook, _p_wxAuiMultiNotebookTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPreviewControlBar, _p_wxPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxPyPreviewControlBar, _p_wxPyPreviewControlBarTo_p_wxWindow, 0, 0},  {&_swigt__p_wxAuiTabCtrl, _p_wxAuiTabCtrlTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFrame, _p_wxFrameTo_p_wxWindow, 0, 0},  {&_swigt__p_wxFontDialog, _p_wxFontDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDirDialog, _p_wxDirDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxColourDialog, _p_wxColourDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxDialog, _p_wxDialogTo_p_wxWindow, 0, 0},  {&_swigt__p_wxMDIParentFrame, _p_wxMDIParentFrameTo_p_wxWindow, 0, 0},{0, 0, 0, 0}};
 
@@ -15606,6 +16276,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDC,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDefaultDockArt,
+  _swigc__p_wxDefaultTabArt,
   _swigc__p_wxDialog,
   _swigc__p_wxDirDialog,
   _swigc__p_wxDisplayChangedEvent,
@@ -15706,6 +16377,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyPrintout,
   _swigc__p_wxPyScrolledWindow,
   _swigc__p_wxPySizer,
+  _swigc__p_wxPyTabArt,
   _swigc__p_wxPyTaskBarIcon,
   _swigc__p_wxPyVListBox,
   _swigc__p_wxPyVScrolledWindow,
@@ -15737,6 +16409,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxString,
   _swigc__p_wxSysColourChangedEvent,
   _swigc__p_wxTIFFHandler,
+  _swigc__p_wxTabArt,
   _swigc__p_wxTaskBarIconEvent,
   _swigc__p_wxTextEntryDialog,
   _swigc__p_wxTipWindow,
index 3134b9c7c6f9e50f5334ece80055633100be81ea..258f4b14a4377465c3c1e28754871c460ae6287e 100644 (file)
@@ -440,7 +440,26 @@ class GridCellBoolEditor(GridCellEditor):
         _grid.GridCellBoolEditor_swiginit(self,_grid.new_GridCellBoolEditor(*args, **kwargs))
         self._setOORInfo(self)
 
+    def UseStringValues(*args, **kwargs):
+        """UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+        return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+    UseStringValues = staticmethod(UseStringValues)
+    def IsTrueValue(*args, **kwargs):
+        """IsTrueValue(String value) -> bool"""
+        return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
+
+    IsTrueValue = staticmethod(IsTrueValue)
 _grid.GridCellBoolEditor_swigregister(GridCellBoolEditor)
+OneString = cvar.OneString
+
+def GridCellBoolEditor_UseStringValues(*args, **kwargs):
+  """GridCellBoolEditor_UseStringValues(String valueTrue=OneString, String valueFalse=EmptyString)"""
+  return _grid.GridCellBoolEditor_UseStringValues(*args, **kwargs)
+
+def GridCellBoolEditor_IsTrueValue(*args, **kwargs):
+  """GridCellBoolEditor_IsTrueValue(String value) -> bool"""
+  return _grid.GridCellBoolEditor_IsTrueValue(*args, **kwargs)
 
 class GridCellChoiceEditor(GridCellEditor):
     """Proxy of C++ GridCellChoiceEditor class"""
index 2ed7a959ce859bbab5134d37b914fa40c92af92c..577bf1f4efecb572ec3aa781b48b9f75eeae8a1a 100644 (file)
@@ -3482,6 +3482,7 @@ IMP_PYCALLBACK__(wxPyGridCellEditor, wxGridCellEditor, Destroy);
 IMP_PYCALLBACK_STRING__constpure(wxPyGridCellEditor, wxGridCellEditor, GetValue);
 
 
+ static const wxString wxPyOneString(_T("1")); 
 SWIGINTERN void wxGridCellAttr__setOORInfo(wxGridCellAttr *self,PyObject *_self){
             if (!self->GetClientObject())
                 self->SetClientObject(new wxPyOORClientData(_self));
@@ -5700,6 +5701,26 @@ SWIGINTERN PyObject *GridCellFloatEditor_swiginit(PyObject *SWIGUNUSEDPARM(self)
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN int OneString_set(PyObject *) {
+  SWIG_Error(SWIG_AttributeError,"Variable OneString is read-only.");
+  return 1;
+}
+
+
+SWIGINTERN PyObject *OneString_get(void) {
+  PyObject *pyobj = 0;
+  
+  {
+#if wxUSE_UNICODE
+    pyobj = PyUnicode_FromWideChar((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#else
+    pyobj = PyString_FromStringAndSize((&wxPyOneString)->c_str(), (&wxPyOneString)->Len());
+#endif
+  }
+  return pyobj;
+}
+
+
 SWIGINTERN PyObject *_wrap_new_GridCellBoolEditor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGridCellBoolEditor *result = 0 ;
@@ -5718,6 +5739,103 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_UseStringValues(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString const &arg1_defvalue = wxPyOneString ;
+  wxString *arg1 = (wxString *) &arg1_defvalue ;
+  wxString const &arg2_defvalue = wxPyEmptyString ;
+  wxString *arg2 = (wxString *) &arg2_defvalue ;
+  bool temp1 = false ;
+  bool temp2 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "valueTrue",(char *) "valueFalse", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:GridCellBoolEditor_UseStringValues",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (obj0) {
+    {
+      arg1 = wxString_in_helper(obj0);
+      if (arg1 == NULL) SWIG_fail;
+      temp1 = true;
+    }
+  }
+  if (obj1) {
+    {
+      arg2 = wxString_in_helper(obj1);
+      if (arg2 == NULL) SWIG_fail;
+      temp2 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    wxGridCellBoolEditor::UseStringValues((wxString const &)*arg1,(wxString const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GridCellBoolEditor_IsTrueValue(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxString *arg1 = 0 ;
+  bool result;
+  bool temp1 = false ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "value", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GridCellBoolEditor_IsTrueValue",kwnames,&obj0)) SWIG_fail;
+  {
+    arg1 = wxString_in_helper(obj0);
+    if (arg1 == NULL) SWIG_fail;
+    temp1 = true;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)wxGridCellBoolEditor::IsTrueValue((wxString const &)*arg1);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp1)
+    delete arg1;
+  }
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *GridCellBoolEditor_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -20576,6 +20694,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GridCellFloatEditor_swigregister", GridCellFloatEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellFloatEditor_swiginit", GridCellFloatEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellBoolEditor", (PyCFunction)_wrap_new_GridCellBoolEditor, METH_NOARGS, NULL},
+        { (char *)"GridCellBoolEditor_UseStringValues", (PyCFunction) _wrap_GridCellBoolEditor_UseStringValues, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GridCellBoolEditor_IsTrueValue", (PyCFunction) _wrap_GridCellBoolEditor_IsTrueValue, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GridCellBoolEditor_swigregister", GridCellBoolEditor_swigregister, METH_VARARGS, NULL},
         { (char *)"GridCellBoolEditor_swiginit", GridCellBoolEditor_swiginit, METH_VARARGS, NULL},
         { (char *)"new_GridCellChoiceEditor", (PyCFunction) _wrap_new_GridCellChoiceEditor, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -23387,6 +23507,7 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "GRID_MIN_ROW_HEIGHT",SWIG_From_int(static_cast< int >(wxGRID_MIN_ROW_HEIGHT)));
   SWIG_Python_SetConstant(d, "GRID_MIN_COL_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_MIN_COL_WIDTH)));
   SWIG_Python_SetConstant(d, "GRID_DEFAULT_SCROLLBAR_WIDTH",SWIG_From_int(static_cast< int >(wxGRID_DEFAULT_SCROLLBAR_WIDTH)));
+  SWIG_addvarlink(SWIG_globals(),(char*)"OneString",OneString_get, OneString_set);
   SWIG_Python_SetConstant(d, "GridCellAttr_Any",SWIG_From_int(static_cast< int >(wxGridCellAttr::Any)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Default",SWIG_From_int(static_cast< int >(wxGridCellAttr::Default)));
   SWIG_Python_SetConstant(d, "GridCellAttr_Cell",SWIG_From_int(static_cast< int >(wxGridCellAttr::Cell)));