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

33 files changed:
wxPython/src/gtk/_core.py
wxPython/src/gtk/_core_wrap.cpp
wxPython/src/gtk/_gdi.py
wxPython/src/gtk/_gdi_wrap.cpp
wxPython/src/gtk/_windows.py
wxPython/src/gtk/_windows_wrap.cpp
wxPython/src/gtk/aui.py
wxPython/src/gtk/aui_wrap.cpp
wxPython/src/gtk/richtext.py
wxPython/src/gtk/richtext_wrap.cpp
wxPython/src/gtk/xrc_wrap.cpp
wxPython/src/mac/_core.py
wxPython/src/mac/_core_wrap.cpp
wxPython/src/mac/_gdi.py
wxPython/src/mac/_gdi_wrap.cpp
wxPython/src/mac/_windows.py
wxPython/src/mac/_windows_wrap.cpp
wxPython/src/mac/aui.py
wxPython/src/mac/aui_wrap.cpp
wxPython/src/mac/richtext.py
wxPython/src/mac/richtext_wrap.cpp
wxPython/src/mac/xrc_wrap.cpp
wxPython/src/msw/_core.py
wxPython/src/msw/_core_wrap.cpp
wxPython/src/msw/_gdi.py
wxPython/src/msw/_gdi_wrap.cpp
wxPython/src/msw/_windows.py
wxPython/src/msw/_windows_wrap.cpp
wxPython/src/msw/aui.py
wxPython/src/msw/aui_wrap.cpp
wxPython/src/msw/richtext.py
wxPython/src/msw/richtext_wrap.cpp
wxPython/src/msw/xrc_wrap.cpp

index 660573487ad3068196e84c04af08b57e8b784121..b4a2481d233b6b1526d8f2cb0a84b301e02bb2bf 100644 (file)
@@ -1649,6 +1649,260 @@ def Point2DFromPoint(*args, **kwargs):
 
 #---------------------------------------------------------------------------
 
+Inside = _core_.Inside
+OutLeft = _core_.OutLeft
+OutRight = _core_.OutRight
+OutTop = _core_.OutTop
+OutBottom = _core_.OutBottom
+class Rect2D(object):
+    """
+    wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+    with floating point component values.
+    """
+    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, wxDouble x=0.0, wxDouble y=0.0, wxDouble w=0.0, wxDouble h=0.0) -> Rect2D
+
+        wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+        with floating point component values.
+        """
+        _core_.Rect2D_swiginit(self,_core_.new_Rect2D(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Rect2D
+    __del__ = lambda self : None;
+    def GetPosition(*args, **kwargs):
+        """GetPosition(self) -> Point2D"""
+        return _core_.Rect2D_GetPosition(*args, **kwargs)
+
+    def GetSize(*args, **kwargs):
+        """GetSize(self) -> Size"""
+        return _core_.Rect2D_GetSize(*args, **kwargs)
+
+    def GetLeft(*args, **kwargs):
+        """GetLeft(self) -> wxDouble"""
+        return _core_.Rect2D_GetLeft(*args, **kwargs)
+
+    def SetLeft(*args, **kwargs):
+        """SetLeft(self, wxDouble n)"""
+        return _core_.Rect2D_SetLeft(*args, **kwargs)
+
+    def MoveLeftTo(*args, **kwargs):
+        """MoveLeftTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveLeftTo(*args, **kwargs)
+
+    def GetTop(*args, **kwargs):
+        """GetTop(self) -> wxDouble"""
+        return _core_.Rect2D_GetTop(*args, **kwargs)
+
+    def SetTop(*args, **kwargs):
+        """SetTop(self, wxDouble n)"""
+        return _core_.Rect2D_SetTop(*args, **kwargs)
+
+    def MoveTopTo(*args, **kwargs):
+        """MoveTopTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveTopTo(*args, **kwargs)
+
+    def GetBottom(*args, **kwargs):
+        """GetBottom(self) -> wxDouble"""
+        return _core_.Rect2D_GetBottom(*args, **kwargs)
+
+    def SetBottom(*args, **kwargs):
+        """SetBottom(self, wxDouble n)"""
+        return _core_.Rect2D_SetBottom(*args, **kwargs)
+
+    def MoveBottomTo(*args, **kwargs):
+        """MoveBottomTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveBottomTo(*args, **kwargs)
+
+    def GetRight(*args, **kwargs):
+        """GetRight(self) -> wxDouble"""
+        return _core_.Rect2D_GetRight(*args, **kwargs)
+
+    def SetRight(*args, **kwargs):
+        """SetRight(self, wxDouble n)"""
+        return _core_.Rect2D_SetRight(*args, **kwargs)
+
+    def MoveRightTo(*args, **kwargs):
+        """MoveRightTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveRightTo(*args, **kwargs)
+
+    def GetLeftTop(*args, **kwargs):
+        """GetLeftTop(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftTop(*args, **kwargs)
+
+    def SetLeftTop(*args, **kwargs):
+        """SetLeftTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftTop(*args, **kwargs)
+
+    def MoveLeftTopTo(*args, **kwargs):
+        """MoveLeftTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftTopTo(*args, **kwargs)
+
+    def GetLeftBottom(*args, **kwargs):
+        """GetLeftBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftBottom(*args, **kwargs)
+
+    def SetLeftBottom(*args, **kwargs):
+        """SetLeftBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftBottom(*args, **kwargs)
+
+    def MoveLeftBottomTo(*args, **kwargs):
+        """MoveLeftBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftBottomTo(*args, **kwargs)
+
+    def GetRightTop(*args, **kwargs):
+        """GetRightTop(self) -> Point2D"""
+        return _core_.Rect2D_GetRightTop(*args, **kwargs)
+
+    def SetRightTop(*args, **kwargs):
+        """SetRightTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightTop(*args, **kwargs)
+
+    def MoveRightTopTo(*args, **kwargs):
+        """MoveRightTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightTopTo(*args, **kwargs)
+
+    def GetRightBottom(*args, **kwargs):
+        """GetRightBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetRightBottom(*args, **kwargs)
+
+    def SetRightBottom(*args, **kwargs):
+        """SetRightBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightBottom(*args, **kwargs)
+
+    def MoveRightBottomTo(*args, **kwargs):
+        """MoveRightBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightBottomTo(*args, **kwargs)
+
+    def GetCentre(*args, **kwargs):
+        """GetCentre(self) -> Point2D"""
+        return _core_.Rect2D_GetCentre(*args, **kwargs)
+
+    def SetCentre(*args, **kwargs):
+        """SetCentre(self, Point2D pt)"""
+        return _core_.Rect2D_SetCentre(*args, **kwargs)
+
+    def MoveCentreTo(*args, **kwargs):
+        """MoveCentreTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveCentreTo(*args, **kwargs)
+
+    def GetOutcode(*args, **kwargs):
+        """GetOutcode(self, Point2D pt) -> int"""
+        return _core_.Rect2D_GetOutcode(*args, **kwargs)
+
+    def Contains(*args, **kwargs):
+        """Contains(self, Point2D pt) -> bool"""
+        return _core_.Rect2D_Contains(*args, **kwargs)
+
+    def ContainsRect(*args, **kwargs):
+        """ContainsRect(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_ContainsRect(*args, **kwargs)
+
+    def IsEmpty(*args, **kwargs):
+        """IsEmpty(self) -> bool"""
+        return _core_.Rect2D_IsEmpty(*args, **kwargs)
+
+    def HaveEqualSize(*args, **kwargs):
+        """HaveEqualSize(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_HaveEqualSize(*args, **kwargs)
+
+    def Inset(*args):
+        """
+        Inset(self, wxDouble x, wxDouble y)
+        Inset(self, wxDouble left, wxDouble top, wxDouble right, wxDouble bottom)
+        """
+        return _core_.Rect2D_Inset(*args)
+
+    def Offset(*args, **kwargs):
+        """Offset(self, Point2D pt)"""
+        return _core_.Rect2D_Offset(*args, **kwargs)
+
+    def ConstrainTo(*args, **kwargs):
+        """ConstrainTo(self, Rect2D rect)"""
+        return _core_.Rect2D_ConstrainTo(*args, **kwargs)
+
+    def Interpolate(*args, **kwargs):
+        """Interpolate(self, int widthfactor, int heightfactor) -> Point2D"""
+        return _core_.Rect2D_Interpolate(*args, **kwargs)
+
+    def Intersect(*args, **kwargs):
+        """Intersect(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Intersect(*args, **kwargs)
+
+    def CreateIntersection(*args, **kwargs):
+        """CreateIntersection(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateIntersection(*args, **kwargs)
+
+    def Intersects(*args, **kwargs):
+        """Intersects(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_Intersects(*args, **kwargs)
+
+    def Union(*args, **kwargs):
+        """Union(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Union(*args, **kwargs)
+
+    def CreateUnion(*args, **kwargs):
+        """CreateUnion(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateUnion(*args, **kwargs)
+
+    def Scale(*args):
+        """
+        Scale(self, wxDouble f)
+        Scale(self, int num, int denum)
+        """
+        return _core_.Rect2D_Scale(*args)
+
+    def __eq__(*args, **kwargs):
+        """
+        __eq__(self, PyObject other) -> bool
+
+        Test for equality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___eq__(*args, **kwargs)
+
+    def __ne__(*args, **kwargs):
+        """
+        __ne__(self, PyObject other) -> bool
+
+        Test for inequality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___ne__(*args, **kwargs)
+
+    x = property(_core_.Rect2D_x_get, _core_.Rect2D_x_set)
+    y = property(_core_.Rect2D_y_get, _core_.Rect2D_y_set)
+    width = property(_core_.Rect2D_width_get, _core_.Rect2D_width_set)
+    height = property(_core_.Rect2D_height_get, _core_.Rect2D_height_set)
+    def Set(*args, **kwargs):
+        """Set(self, wxDouble x=0, wxDouble y=0, wxDouble width=0, wxDouble height=0)"""
+        return _core_.Rect2D_Set(*args, **kwargs)
+
+    def Get(*args, **kwargs):
+        """
+        Get() -> (x,y, width, height)
+
+        Return x, y, width and height y properties as a tuple.
+        """
+        return _core_.Rect2D_Get(*args, **kwargs)
+
+    def __str__(self):                   return str(self.Get())
+    def __repr__(self):                  return 'wx.Rect2D'+str(self.Get())
+    def __len__(self):                   return len(self.Get())
+    def __getitem__(self, index):        return self.Get()[index]
+    def __setitem__(self, index, val):
+        if index == 0: self.x = val
+        elif index == 1: self.y = val
+        elif index == 2: self.width = val
+        elif index == 3: self.height = val                        
+        else: raise IndexError
+    def __nonzero__(self):               return self.Get() != (0.0, 0.0, 0.0, 0.0)
+    __safe_for_unpickling__ = True
+    def __reduce__(self):                return (wx.Rect2D, self.Get())
+
+_core_.Rect2D_swigregister(Rect2D)
+
+#---------------------------------------------------------------------------
+
 FromStart = _core_.FromStart
 FromCurrent = _core_.FromCurrent
 FromEnd = _core_.FromEnd
index 791e02fe3d5cf8253f7b6a8a0e5c3877963aa7fd..8674c1d9541030d42bee4017717a7c811e347194 100644 (file)
@@ -2496,107 +2496,109 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDateEvent swig_types[30]
 #define SWIGTYPE_p_wxDateTime swig_types[31]
 #define SWIGTYPE_p_wxDisplayChangedEvent swig_types[32]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[33]
-#define SWIGTYPE_p_wxDuplexMode swig_types[34]
-#define SWIGTYPE_p_wxEraseEvent swig_types[35]
-#define SWIGTYPE_p_wxEvent swig_types[36]
-#define SWIGTYPE_p_wxEventLoop swig_types[37]
-#define SWIGTYPE_p_wxEventLoopActivator swig_types[38]
-#define SWIGTYPE_p_wxEvtHandler swig_types[39]
-#define SWIGTYPE_p_wxFSFile swig_types[40]
-#define SWIGTYPE_p_wxFileSystem swig_types[41]
-#define SWIGTYPE_p_wxFileSystemHandler swig_types[42]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[43]
-#define SWIGTYPE_p_wxFocusEvent swig_types[44]
-#define SWIGTYPE_p_wxFont swig_types[45]
-#define SWIGTYPE_p_wxFrame swig_types[46]
-#define SWIGTYPE_p_wxGBPosition swig_types[47]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[48]
-#define SWIGTYPE_p_wxGBSpan swig_types[49]
-#define SWIGTYPE_p_wxGIFHandler swig_types[50]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[51]
-#define SWIGTYPE_p_wxGridSizer swig_types[52]
-#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[53]
-#define SWIGTYPE_p_wxICOHandler swig_types[54]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[55]
-#define SWIGTYPE_p_wxIdleEvent swig_types[56]
-#define SWIGTYPE_p_wxImage swig_types[57]
-#define SWIGTYPE_p_wxImageHandler swig_types[58]
-#define SWIGTYPE_p_wxImageHistogram swig_types[59]
-#define SWIGTYPE_p_wxImage_HSVValue swig_types[60]
-#define SWIGTYPE_p_wxImage_RGBValue swig_types[61]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[62]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[63]
-#define SWIGTYPE_p_wxInputStream swig_types[64]
-#define SWIGTYPE_p_wxInternetFSHandler swig_types[65]
-#define SWIGTYPE_p_wxItemContainer swig_types[66]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[67]
-#define SWIGTYPE_p_wxKeyEvent swig_types[68]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[69]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[70]
-#define SWIGTYPE_p_wxMemoryFSHandler swig_types[71]
-#define SWIGTYPE_p_wxMenu swig_types[72]
-#define SWIGTYPE_p_wxMenuBar swig_types[73]
-#define SWIGTYPE_p_wxMenuBarBase swig_types[74]
-#define SWIGTYPE_p_wxMenuEvent swig_types[75]
-#define SWIGTYPE_p_wxMenuItem swig_types[76]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[77]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[78]
-#define SWIGTYPE_p_wxMouseEvent swig_types[79]
-#define SWIGTYPE_p_wxMoveEvent swig_types[80]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[81]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[82]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[83]
-#define SWIGTYPE_p_wxObject swig_types[84]
-#define SWIGTYPE_p_wxOutputStream swig_types[85]
-#define SWIGTYPE_p_wxPCXHandler swig_types[86]
-#define SWIGTYPE_p_wxPNGHandler swig_types[87]
-#define SWIGTYPE_p_wxPNMHandler swig_types[88]
-#define SWIGTYPE_p_wxPaintEvent swig_types[89]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[90]
-#define SWIGTYPE_p_wxPaperSize swig_types[91]
-#define SWIGTYPE_p_wxPoint swig_types[92]
-#define SWIGTYPE_p_wxPoint2D swig_types[93]
-#define SWIGTYPE_p_wxPropagateOnce swig_types[94]
-#define SWIGTYPE_p_wxPropagationDisabler swig_types[95]
-#define SWIGTYPE_p_wxPyApp swig_types[96]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[97]
-#define SWIGTYPE_p_wxPyDropTarget swig_types[98]
-#define SWIGTYPE_p_wxPyEvent swig_types[99]
-#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[100]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[101]
-#define SWIGTYPE_p_wxPyInputStream swig_types[102]
-#define SWIGTYPE_p_wxPySizer swig_types[103]
-#define SWIGTYPE_p_wxPyValidator swig_types[104]
-#define SWIGTYPE_p_wxQuantize swig_types[105]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[106]
-#define SWIGTYPE_p_wxRealPoint swig_types[107]
-#define SWIGTYPE_p_wxRect swig_types[108]
-#define SWIGTYPE_p_wxRegion swig_types[109]
-#define SWIGTYPE_p_wxScrollEvent swig_types[110]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[111]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[112]
-#define SWIGTYPE_p_wxShowEvent swig_types[113]
-#define SWIGTYPE_p_wxSize swig_types[114]
-#define SWIGTYPE_p_wxSizeEvent swig_types[115]
-#define SWIGTYPE_p_wxSizer swig_types[116]
-#define SWIGTYPE_p_wxSizerItem swig_types[117]
-#define SWIGTYPE_p_wxStaticBox swig_types[118]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[119]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[120]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[121]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[122]
-#define SWIGTYPE_p_wxToolTip swig_types[123]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[124]
-#define SWIGTYPE_p_wxValidator swig_types[125]
-#define SWIGTYPE_p_wxVisualAttributes swig_types[126]
-#define SWIGTYPE_p_wxWindow swig_types[127]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[128]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[129]
-#define SWIGTYPE_p_wxXPMHandler swig_types[130]
-#define SWIGTYPE_p_wxZipFSHandler swig_types[131]
-static swig_type_info *swig_types[133];
-static swig_module_info swig_module = {swig_types, 132, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDouble swig_types[33]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[34]
+#define SWIGTYPE_p_wxDuplexMode swig_types[35]
+#define SWIGTYPE_p_wxEraseEvent swig_types[36]
+#define SWIGTYPE_p_wxEvent swig_types[37]
+#define SWIGTYPE_p_wxEventLoop swig_types[38]
+#define SWIGTYPE_p_wxEventLoopActivator swig_types[39]
+#define SWIGTYPE_p_wxEvtHandler swig_types[40]
+#define SWIGTYPE_p_wxFSFile swig_types[41]
+#define SWIGTYPE_p_wxFileSystem swig_types[42]
+#define SWIGTYPE_p_wxFileSystemHandler swig_types[43]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[44]
+#define SWIGTYPE_p_wxFocusEvent swig_types[45]
+#define SWIGTYPE_p_wxFont swig_types[46]
+#define SWIGTYPE_p_wxFrame swig_types[47]
+#define SWIGTYPE_p_wxGBPosition swig_types[48]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[49]
+#define SWIGTYPE_p_wxGBSpan swig_types[50]
+#define SWIGTYPE_p_wxGIFHandler swig_types[51]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[52]
+#define SWIGTYPE_p_wxGridSizer swig_types[53]
+#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[54]
+#define SWIGTYPE_p_wxICOHandler swig_types[55]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[56]
+#define SWIGTYPE_p_wxIdleEvent swig_types[57]
+#define SWIGTYPE_p_wxImage swig_types[58]
+#define SWIGTYPE_p_wxImageHandler swig_types[59]
+#define SWIGTYPE_p_wxImageHistogram swig_types[60]
+#define SWIGTYPE_p_wxImage_HSVValue swig_types[61]
+#define SWIGTYPE_p_wxImage_RGBValue swig_types[62]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[63]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[64]
+#define SWIGTYPE_p_wxInputStream swig_types[65]
+#define SWIGTYPE_p_wxInternetFSHandler swig_types[66]
+#define SWIGTYPE_p_wxItemContainer swig_types[67]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[68]
+#define SWIGTYPE_p_wxKeyEvent swig_types[69]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[70]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[71]
+#define SWIGTYPE_p_wxMemoryFSHandler swig_types[72]
+#define SWIGTYPE_p_wxMenu swig_types[73]
+#define SWIGTYPE_p_wxMenuBar swig_types[74]
+#define SWIGTYPE_p_wxMenuBarBase swig_types[75]
+#define SWIGTYPE_p_wxMenuEvent swig_types[76]
+#define SWIGTYPE_p_wxMenuItem swig_types[77]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[78]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[79]
+#define SWIGTYPE_p_wxMouseEvent swig_types[80]
+#define SWIGTYPE_p_wxMoveEvent swig_types[81]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[82]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[83]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[84]
+#define SWIGTYPE_p_wxObject swig_types[85]
+#define SWIGTYPE_p_wxOutputStream swig_types[86]
+#define SWIGTYPE_p_wxPCXHandler swig_types[87]
+#define SWIGTYPE_p_wxPNGHandler swig_types[88]
+#define SWIGTYPE_p_wxPNMHandler swig_types[89]
+#define SWIGTYPE_p_wxPaintEvent swig_types[90]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[91]
+#define SWIGTYPE_p_wxPaperSize swig_types[92]
+#define SWIGTYPE_p_wxPoint swig_types[93]
+#define SWIGTYPE_p_wxPoint2D swig_types[94]
+#define SWIGTYPE_p_wxPropagateOnce swig_types[95]
+#define SWIGTYPE_p_wxPropagationDisabler swig_types[96]
+#define SWIGTYPE_p_wxPyApp swig_types[97]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[98]
+#define SWIGTYPE_p_wxPyDropTarget swig_types[99]
+#define SWIGTYPE_p_wxPyEvent swig_types[100]
+#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[101]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[102]
+#define SWIGTYPE_p_wxPyInputStream swig_types[103]
+#define SWIGTYPE_p_wxPySizer swig_types[104]
+#define SWIGTYPE_p_wxPyValidator swig_types[105]
+#define SWIGTYPE_p_wxQuantize swig_types[106]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[107]
+#define SWIGTYPE_p_wxRealPoint swig_types[108]
+#define SWIGTYPE_p_wxRect swig_types[109]
+#define SWIGTYPE_p_wxRect2D swig_types[110]
+#define SWIGTYPE_p_wxRegion swig_types[111]
+#define SWIGTYPE_p_wxScrollEvent swig_types[112]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[113]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[114]
+#define SWIGTYPE_p_wxShowEvent swig_types[115]
+#define SWIGTYPE_p_wxSize swig_types[116]
+#define SWIGTYPE_p_wxSizeEvent swig_types[117]
+#define SWIGTYPE_p_wxSizer swig_types[118]
+#define SWIGTYPE_p_wxSizerItem swig_types[119]
+#define SWIGTYPE_p_wxStaticBox swig_types[120]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[121]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[122]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[123]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[124]
+#define SWIGTYPE_p_wxToolTip swig_types[125]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[126]
+#define SWIGTYPE_p_wxValidator swig_types[127]
+#define SWIGTYPE_p_wxVisualAttributes swig_types[128]
+#define SWIGTYPE_p_wxWindow swig_types[129]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[130]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[131]
+#define SWIGTYPE_p_wxXPMHandler swig_types[132]
+#define SWIGTYPE_p_wxZipFSHandler swig_types[133]
+static swig_type_info *swig_types[135];
+static swig_module_info swig_module = {swig_types, 134, 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)
 
@@ -2892,7 +2894,9 @@ static wxPyCoreAPI API = {
     wxPyCheckForApp,
 
     wxArrayDouble2PyList_helper,
-    wxPoint2D_LIST_helper
+    wxPoint2D_LIST_helper,
+    wxRect2D_helper,
+
 };
 
 #endif
@@ -3012,11 +3016,11 @@ SWIG_AsVal_float (PyObject * obj, float *val)
 }
 
 SWIGINTERN PyObject *wxSize_Get(wxSize *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3045,11 +3049,11 @@ SWIGINTERN void wxRealPoint_Set(wxRealPoint *self,double x,double y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxRealPoint_Get(wxRealPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y));
-            wxPyEndBlockThreads(blocked);
+            //PyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxPoint___eq__(wxPoint *self,PyObject *other){
@@ -3075,11 +3079,11 @@ SWIGINTERN void wxPoint_Set(wxPoint *self,long x,long y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxPoint_Get(wxPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxRect___eq__(wxRect *self,PyObject *other){
@@ -3107,13 +3111,13 @@ SWIGINTERN void wxRect_Set(wxRect *self,int x=0,int y=0,int width=0,int height=0
             self->height = height;
         }
 SWIGINTERN PyObject *wxRect_Get(wxRect *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(4);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             PyTuple_SET_ITEM(tup, 2, PyInt_FromLong(self->width));
             PyTuple_SET_ITEM(tup, 3, PyInt_FromLong(self->height));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3127,10 +3131,10 @@ SWIGINTERN PyObject *wxRect_Get(wxRect *self){
         dest = reg1.GetBox();
 
         if (dest != wxRect(0,0,0,0)) {
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             wxRect* newRect = new wxRect(dest);
             obj = wxPyConstructObject((void*)newRect, wxT("wxRect"), true);
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return obj;
         }
         Py_INCREF(Py_None);
@@ -3160,11 +3164,45 @@ SWIGINTERN void wxPoint2D_Set(wxPoint2D *self,double x=0,double y=0){
             self->m_y = y;
         }
 SWIGINTERN PyObject *wxPoint2D_Get(wxPoint2D *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
+            return tup;
+        }
+SWIGINTERN bool wxRect2D___eq__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return false;
+            if ( ! wxRect2D_helper(other, &obj) ) {
+                PyErr_Clear();
+                return false;
+            }
+            return self->operator==(*obj);
+        }
+SWIGINTERN bool wxRect2D___ne__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return true;
+            if ( ! wxRect2D_helper(other, &obj)) {
+                PyErr_Clear();
+                return true;
+            }
+            return self->operator!=(*obj);
+        }
+SWIGINTERN void wxRect2D_Set(wxRect2D *self,wxDouble x=0,wxDouble y=0,wxDouble width=0,wxDouble height=0){
+            self->m_x = x;
+            self->m_y = y;
+            self->m_width = width;
+            self->m_height = height;
+        }
+SWIGINTERN PyObject *wxRect2D_Get(wxRect2D *self){
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            PyObject* tup = PyTuple_New(4);
+            PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
+            PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
+            PyTuple_SET_ITEM(tup, 2, PyFloat_FromDouble(self->m_width));
+            PyTuple_SET_ITEM(tup, 3, PyFloat_FromDouble(self->m_height));
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -4617,9 +4655,7 @@ SWIGINTERN PyObject *_wrap_new_Size(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxSize *)new wxSize(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxSize, SWIG_POINTER_NEW |  0 );
@@ -4644,10 +4680,8 @@ SWIGINTERN PyObject *_wrap_delete_Size(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4748,9 +4782,7 @@ SWIGINTERN PyObject *_wrap_Size___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4785,9 +4817,7 @@ SWIGINTERN PyObject *_wrap_Size___sub__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4821,9 +4851,7 @@ SWIGINTERN PyObject *_wrap_Size_IncTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4857,9 +4885,7 @@ SWIGINTERN PyObject *_wrap_Size_DecTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4904,9 +4930,7 @@ SWIGINTERN PyObject *_wrap_Size_IncBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4951,9 +4975,7 @@ SWIGINTERN PyObject *_wrap_Size_DecBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4998,9 +5020,7 @@ SWIGINTERN PyObject *_wrap_Size_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< float >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Scale(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5045,9 +5065,7 @@ SWIGINTERN PyObject *_wrap_Size_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Set(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5083,9 +5101,7 @@ SWIGINTERN PyObject *_wrap_Size_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5121,9 +5137,7 @@ SWIGINTERN PyObject *_wrap_Size_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5149,9 +5163,7 @@ SWIGINTERN PyObject *_wrap_Size_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5177,9 +5189,7 @@ SWIGINTERN PyObject *_wrap_Size_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5205,9 +5215,7 @@ SWIGINTERN PyObject *_wrap_Size_IsFullySpecified(PyObject *SWIGUNUSEDPARM(self),
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxSize const *)arg1)->IsFullySpecified();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -5243,9 +5251,7 @@ SWIGINTERN PyObject *_wrap_Size_SetDefaults(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetDefaults((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5271,9 +5277,7 @@ SWIGINTERN PyObject *_wrap_Size_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxSize_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5431,9 +5435,7 @@ SWIGINTERN PyObject *_wrap_new_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRealPoint *)new wxRealPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_NEW |  0 );
@@ -5458,10 +5460,8 @@ SWIGINTERN PyObject *_wrap_delete_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5562,9 +5562,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___add__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5599,9 +5597,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___sub__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5646,9 +5642,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Set(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< double >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRealPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5674,9 +5668,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Get(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRealPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5834,9 +5826,7 @@ SWIGINTERN PyObject *_wrap_new_Point(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint *)new wxPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_NEW |  0 );
@@ -5861,10 +5851,8 @@ SWIGINTERN PyObject *_wrap_delete_Point(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5965,9 +5953,7 @@ SWIGINTERN PyObject *_wrap_Point___add__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6002,9 +5988,7 @@ SWIGINTERN PyObject *_wrap_Point___sub__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6039,12 +6023,10 @@ SWIGINTERN PyObject *_wrap_Point___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator +=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6079,12 +6061,10 @@ SWIGINTERN PyObject *_wrap_Point___isub__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator -=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6129,9 +6109,7 @@ SWIGINTERN PyObject *_wrap_Point_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg3 = static_cast< long >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6157,9 +6135,7 @@ SWIGINTERN PyObject *_wrap_Point_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -6233,9 +6209,7 @@ SWIGINTERN PyObject *_wrap_new_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg4 = static_cast< int >(val4);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect(arg1,arg2,arg3,arg4);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_NEW |  0 );
@@ -6268,9 +6242,7 @@ SWIGINTERN PyObject *_wrap_new_RectPP(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6303,9 +6275,7 @@ SWIGINTERN PyObject *_wrap_new_RectPS(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6331,9 +6301,7 @@ SWIGINTERN PyObject *_wrap_new_RectS(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     if ( ! wxSize_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxSize const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6358,10 +6326,8 @@ SWIGINTERN PyObject *_wrap_delete_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6387,9 +6353,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetX();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6425,9 +6389,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetX(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6453,9 +6415,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)(arg1)->GetY();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6491,9 +6451,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetY(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6519,9 +6477,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6557,9 +6513,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6585,9 +6539,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6623,9 +6575,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6651,9 +6601,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetPosition();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6687,9 +6635,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetPosition((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6715,9 +6661,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetSize();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -6751,9 +6695,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetSize((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6779,9 +6721,7 @@ SWIGINTERN PyObject *_wrap_Rect_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->IsEmpty();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -6809,9 +6749,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6845,9 +6783,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6873,9 +6809,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6909,9 +6843,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6937,9 +6869,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6973,9 +6903,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7001,9 +6929,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -7037,9 +6963,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7065,9 +6989,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7093,9 +7015,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetTop();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7121,9 +7041,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetBottom();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7149,9 +7067,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7187,9 +7103,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetLeft(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7225,9 +7139,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetRight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7263,9 +7175,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTop(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7301,9 +7211,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottom(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7349,12 +7257,10 @@ SWIGINTERN PyObject *_wrap_Rect_Inflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Inflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7400,12 +7306,10 @@ SWIGINTERN PyObject *_wrap_Rect_Deflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Deflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7450,9 +7354,7 @@ SWIGINTERN PyObject *_wrap_Rect_OffsetXY(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7486,9 +7388,7 @@ SWIGINTERN PyObject *_wrap_Rect_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7523,9 +7423,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Intersect((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7560,9 +7458,7 @@ SWIGINTERN PyObject *_wrap_Rect_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Union((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7597,9 +7493,7 @@ SWIGINTERN PyObject *_wrap_Rect___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->operator +((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7634,12 +7528,10 @@ SWIGINTERN PyObject *_wrap_Rect___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->operator +=((wxRect const &)*arg2);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7751,9 +7643,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsXY(PyObject *SWIGUNUSEDPARM(self), PyObj
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7790,9 +7680,7 @@ SWIGINTERN PyObject *_wrap_Rect_Contains(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7829,9 +7717,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7868,9 +7754,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Intersects((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7918,9 +7802,7 @@ SWIGINTERN PyObject *_wrap_Rect_CenterIn(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg3 = static_cast< int >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->CenterIn((wxRect const &)*arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -8203,9 +8085,7 @@ SWIGINTERN PyObject *_wrap_Rect_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg5 = static_cast< int >(val5);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRect_Set(arg1,arg2,arg3,arg4,arg5);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8231,9 +8111,7 @@ SWIGINTERN PyObject *_wrap_Rect_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRect_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -8325,9 +8203,7 @@ SWIGINTERN PyObject *_wrap_new_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_NEW |  0 );
@@ -8353,9 +8229,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DCopy(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint2D_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint2D const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8381,9 +8255,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DFromPoint(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8408,10 +8280,8 @@ SWIGINTERN PyObject *_wrap_delete_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8444,9 +8314,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetFloor(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetFloor(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8491,9 +8359,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetRounded(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetRounded(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8531,9 +8397,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorLength(PyObject *SWIGUNUSEDPARM(self
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorLength();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8559,9 +8423,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorAngle();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8597,9 +8459,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorLength(PyObject *SWIGUNUSEDPARM(self
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorLength(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8635,9 +8495,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorAngle(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8672,9 +8530,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistance(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistance((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8709,9 +8565,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistanceSquare(PyObject *SWIGUNUSEDPARM(se
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistanceSquare((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8746,9 +8600,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDotProduct(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDotProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8783,9 +8635,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetCrossProduct(PyObject *SWIGUNUSEDPARM(self
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetCrossProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8811,9 +8661,7 @@ SWIGINTERN PyObject *_wrap_Point2D___neg__(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8848,12 +8696,10 @@ SWIGINTERN PyObject *_wrap_Point2D___iadd__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator +=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8888,12 +8734,10 @@ SWIGINTERN PyObject *_wrap_Point2D___isub__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator -=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8928,12 +8772,10 @@ SWIGINTERN PyObject *_wrap_Point2D___imul__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator *=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8968,12 +8810,10 @@ SWIGINTERN PyObject *_wrap_Point2D___idiv__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator /=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -9194,9 +9034,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg3 = static_cast< double >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint2D_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -9222,9 +9060,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint2D_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -9245,6 +9081,2276 @@ SWIGINTERN PyObject *Point2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDouble arg1 = (wxDouble) 0.0 ;
+  wxDouble arg2 = (wxDouble) 0.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxRect2D *result = 0 ;
+  void *argp1 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OOOO:new_Rect2D",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (obj0) {
+    {
+      res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res1)) {
+        SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp1) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp1);
+        arg1 = *temp;
+        if (SWIG_IsNewObj(res1)) delete temp;
+      }
+    }
+  }
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  {
+    result = (wxRect2D *)new wxRect2D(arg1,arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect2D, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Rect2D" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetPosition" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetPosition();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxSize 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetSize" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetSize();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeft" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeft();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeft",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeft" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetLeft(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveLeftTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetTop(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveTopTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetBottom(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveBottomTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRight" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRight();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRight",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRight" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetRight(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveRightTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetCentre" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetCentre();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetCentre",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetCentre" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetCentre((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveCentreTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveCentreTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveCentreTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveCentreTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetOutcode(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxOutCode result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_GetOutcode",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetOutcode" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (wxOutCode)((wxRect2D const *)arg1)->GetOutcode((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Contains(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Contains",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Contains" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ContainsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ContainsRect" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  bool 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_IsEmpty" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (bool)((wxRect2D const *)arg1)->IsEmpty();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_HaveEqualSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_HaveEqualSize",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_HaveEqualSize" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->HaveEqualSize((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    res4 = SWIG_ConvertPtr(swig_obj[3], &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res4)) {
+      SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp4) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+      arg4 = *temp;
+      if (SWIG_IsNewObj(res4)) delete temp;
+    }
+  }
+  {
+    res5 = SWIG_ConvertPtr(swig_obj[4], &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res5)) {
+      SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp5) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+      arg5 = *temp;
+      if (SWIG_IsNewObj(res5)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Inset",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 3) {
+    return _wrap_Rect2D_Inset__SWIG_0(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_Rect2D_Inset__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Inset'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Offset",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Offset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Offset((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ConstrainTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ConstrainTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ConstrainTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->ConstrainTo((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Interpolate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  wxPoint2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "widthfactor",(char *) "heightfactor", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Rect2D_Interpolate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Interpolate" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Interpolate" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Interpolate" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    result = (arg1)->Interpolate(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersect" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Intersect((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateIntersection(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateIntersection",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateIntersection" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateIntersection((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersects",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersects" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Intersects((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Union",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Union" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Union((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateUnion(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateUnion",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateUnion" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateUnion((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->Scale(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Scale" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    (arg1)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Scale",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_Rect2D_Scale__SWIG_0(self, argc, argv);
+  }
+  if (argc == 3) {
+    return _wrap_Rect2D_Scale__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Scale'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___eq__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___eq__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___eq__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___eq__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___ne__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___ne__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___ne__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___ne__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_x_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_x = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_x);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_y_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_y = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_y);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_width_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_width = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_width);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_height_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_height = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_height);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 = (wxDouble) 0 ;
+  wxDouble arg3 = (wxDouble) 0 ;
+  wxDouble arg4 = (wxDouble) 0 ;
+  wxDouble arg5 = (wxDouble) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 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 *) "width",(char *) "height", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOO:Rect2D_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  if (obj4) {
+    {
+      res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res5)) {
+        SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp5) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+        arg5 = *temp;
+        if (SWIG_IsNewObj(res5)) delete temp;
+      }
+    }
+  }
+  {
+    wxRect2D_Set(arg1,arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (PyObject *)wxRect2D_Get(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = result;
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *Rect2D_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxRect2D, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *Rect2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN int DefaultPosition_set(PyObject *) {
   SWIG_Error(SWIG_AttributeError,"Variable DefaultPosition is read-only.");
   return 1;
@@ -54434,6 +56540,66 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Point2D_Get", (PyCFunction)_wrap_Point2D_Get, METH_O, NULL},
         { (char *)"Point2D_swigregister", Point2D_swigregister, METH_VARARGS, NULL},
         { (char *)"Point2D_swiginit", Point2D_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_Rect2D", (PyCFunction) _wrap_new_Rect2D, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_Rect2D", (PyCFunction)_wrap_delete_Rect2D, METH_O, NULL},
+        { (char *)"Rect2D_GetPosition", (PyCFunction)_wrap_Rect2D_GetPosition, METH_O, NULL},
+        { (char *)"Rect2D_GetSize", (PyCFunction)_wrap_Rect2D_GetSize, METH_O, NULL},
+        { (char *)"Rect2D_GetLeft", (PyCFunction)_wrap_Rect2D_GetLeft, METH_O, NULL},
+        { (char *)"Rect2D_SetLeft", (PyCFunction) _wrap_Rect2D_SetLeft, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTo", (PyCFunction) _wrap_Rect2D_MoveLeftTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetTop", (PyCFunction)_wrap_Rect2D_GetTop, METH_O, NULL},
+        { (char *)"Rect2D_SetTop", (PyCFunction) _wrap_Rect2D_SetTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveTopTo", (PyCFunction) _wrap_Rect2D_MoveTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetBottom", (PyCFunction)_wrap_Rect2D_GetBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetBottom", (PyCFunction) _wrap_Rect2D_SetBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveBottomTo", (PyCFunction) _wrap_Rect2D_MoveBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRight", (PyCFunction)_wrap_Rect2D_GetRight, METH_O, NULL},
+        { (char *)"Rect2D_SetRight", (PyCFunction) _wrap_Rect2D_SetRight, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTo", (PyCFunction) _wrap_Rect2D_MoveRightTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftTop", (PyCFunction)_wrap_Rect2D_GetLeftTop, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftTop", (PyCFunction) _wrap_Rect2D_SetLeftTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTopTo", (PyCFunction) _wrap_Rect2D_MoveLeftTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftBottom", (PyCFunction)_wrap_Rect2D_GetLeftBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftBottom", (PyCFunction) _wrap_Rect2D_SetLeftBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftBottomTo", (PyCFunction) _wrap_Rect2D_MoveLeftBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightTop", (PyCFunction)_wrap_Rect2D_GetRightTop, METH_O, NULL},
+        { (char *)"Rect2D_SetRightTop", (PyCFunction) _wrap_Rect2D_SetRightTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTopTo", (PyCFunction) _wrap_Rect2D_MoveRightTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightBottom", (PyCFunction)_wrap_Rect2D_GetRightBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetRightBottom", (PyCFunction) _wrap_Rect2D_SetRightBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightBottomTo", (PyCFunction) _wrap_Rect2D_MoveRightBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetCentre", (PyCFunction)_wrap_Rect2D_GetCentre, METH_O, NULL},
+        { (char *)"Rect2D_SetCentre", (PyCFunction) _wrap_Rect2D_SetCentre, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveCentreTo", (PyCFunction) _wrap_Rect2D_MoveCentreTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetOutcode", (PyCFunction) _wrap_Rect2D_GetOutcode, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Contains", (PyCFunction) _wrap_Rect2D_Contains, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ContainsRect", (PyCFunction) _wrap_Rect2D_ContainsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_IsEmpty", (PyCFunction)_wrap_Rect2D_IsEmpty, METH_O, NULL},
+        { (char *)"Rect2D_HaveEqualSize", (PyCFunction) _wrap_Rect2D_HaveEqualSize, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Inset", _wrap_Rect2D_Inset, METH_VARARGS, NULL},
+        { (char *)"Rect2D_Offset", (PyCFunction) _wrap_Rect2D_Offset, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ConstrainTo", (PyCFunction) _wrap_Rect2D_ConstrainTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Interpolate", (PyCFunction) _wrap_Rect2D_Interpolate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersect", (PyCFunction) _wrap_Rect2D_Intersect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateIntersection", (PyCFunction) _wrap_Rect2D_CreateIntersection, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersects", (PyCFunction) _wrap_Rect2D_Intersects, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Union", (PyCFunction) _wrap_Rect2D_Union, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateUnion", (PyCFunction) _wrap_Rect2D_CreateUnion, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Scale", _wrap_Rect2D_Scale, METH_VARARGS, NULL},
+        { (char *)"Rect2D___eq__", (PyCFunction) _wrap_Rect2D___eq__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D___ne__", (PyCFunction) _wrap_Rect2D___ne__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_x_set", _wrap_Rect2D_x_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_x_get", (PyCFunction)_wrap_Rect2D_x_get, METH_O, NULL},
+        { (char *)"Rect2D_y_set", _wrap_Rect2D_y_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_y_get", (PyCFunction)_wrap_Rect2D_y_get, METH_O, NULL},
+        { (char *)"Rect2D_width_set", _wrap_Rect2D_width_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_width_get", (PyCFunction)_wrap_Rect2D_width_get, METH_O, NULL},
+        { (char *)"Rect2D_height_set", _wrap_Rect2D_height_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_height_get", (PyCFunction)_wrap_Rect2D_height_get, METH_O, NULL},
+        { (char *)"Rect2D_Set", (PyCFunction) _wrap_Rect2D_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Get", (PyCFunction)_wrap_Rect2D_Get, METH_O, NULL},
+        { (char *)"Rect2D_swigregister", Rect2D_swigregister, METH_VARARGS, NULL},
+        { (char *)"Rect2D_swiginit", Rect2D_swiginit, METH_VARARGS, NULL},
         { (char *)"new_InputStream", (PyCFunction) _wrap_new_InputStream, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_InputStream", (PyCFunction)_wrap_delete_InputStream, METH_O, NULL},
         { (char *)"InputStream_close", (PyCFunction)_wrap_InputStream_close, METH_O, NULL},
@@ -56344,6 +58510,7 @@ static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", "wxDateEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateTime = {"_p_wxDateTime", "wxDateTime *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", "wxDisplayChangedEvent *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDouble = {"_p_wxDouble", "wxDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", "wxDropFilesEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", "wxEraseEvent *", 0, 0, (void*)0, 0};
@@ -56420,6 +58587,7 @@ static swig_type_info _swigt__p_wxQuantize = {"_p_wxQuantize", "wxQuantize *", 0
 static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", "wxQueryNewPaletteEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRealPoint = {"_p_wxRealPoint", "wxRealPoint *", 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_wxRect2D = {"_p_wxRect2D", "wxRect2D *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", "wxScrollEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", "wxScrollWinEvent *", 0, 0, (void*)0, 0};
@@ -56478,6 +58646,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDateTime,
   &_swigt__p_wxDisplayChangedEvent,
+  &_swigt__p_wxDouble,
   &_swigt__p_wxDropFilesEvent,
   &_swigt__p_wxDuplexMode,
   &_swigt__p_wxEraseEvent,
@@ -56554,6 +58723,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRealPoint,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2D,
   &_swigt__p_wxRegion,
   &_swigt__p_wxScrollEvent,
   &_swigt__p_wxScrollWinEvent,
@@ -56612,6 +58782,7 @@ static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0,
 static swig_cast_info _swigc__p_wxDateEvent[] = {  {&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDateTime[] = {  {&_swigt__p_wxDateTime, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {  {&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDouble[] = {  {&_swigt__p_wxDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDropFilesEvent[] = {  {&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEraseEvent[] = {  {&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56688,6 +58859,7 @@ static swig_cast_info _swigc__p_wxQuantize[] = {  {&_swigt__p_wxQuantize, 0, 0,
 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {  {&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRealPoint[] = {  {&_swigt__p_wxRealPoint, 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_wxRect2D[] = {  {&_swigt__p_wxRect2D, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollEvent[] = {  {&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollWinEvent[] = {  {&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56746,6 +58918,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDateEvent,
   _swigc__p_wxDateTime,
   _swigc__p_wxDisplayChangedEvent,
+  _swigc__p_wxDouble,
   _swigc__p_wxDropFilesEvent,
   _swigc__p_wxDuplexMode,
   _swigc__p_wxEraseEvent,
@@ -56822,6 +58995,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRealPoint,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2D,
   _swigc__p_wxRegion,
   _swigc__p_wxScrollEvent,
   _swigc__p_wxScrollWinEvent,
@@ -58011,6 +60185,11 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "CURSOR_COPY_ARROW",SWIG_From_int(static_cast< int >(wxCURSOR_COPY_ARROW)));
   SWIG_Python_SetConstant(d, "CURSOR_ARROWWAIT",SWIG_From_int(static_cast< int >(wxCURSOR_ARROWWAIT)));
   SWIG_Python_SetConstant(d, "CURSOR_MAX",SWIG_From_int(static_cast< int >(wxCURSOR_MAX)));
+  SWIG_Python_SetConstant(d, "Inside",SWIG_From_int(static_cast< int >(wxInside)));
+  SWIG_Python_SetConstant(d, "OutLeft",SWIG_From_int(static_cast< int >(wxOutLeft)));
+  SWIG_Python_SetConstant(d, "OutRight",SWIG_From_int(static_cast< int >(wxOutRight)));
+  SWIG_Python_SetConstant(d, "OutTop",SWIG_From_int(static_cast< int >(wxOutTop)));
+  SWIG_Python_SetConstant(d, "OutBottom",SWIG_From_int(static_cast< int >(wxOutBottom)));
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultPosition",DefaultPosition_get, DefaultPosition_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultSize",DefaultSize_get, DefaultSize_set);
   SWIG_Python_SetConstant(d, "FromStart",SWIG_From_int(static_cast< int >(wxFromStart)));
index b7d96bf06e5168b1d7b1604c2af71ab179b093ca..378e8932640fc734f9eb6e8e68e790d74197c1e5 100644 (file)
@@ -4383,6 +4383,88 @@ _gdi_.DC_swigregister(DC)
 
 #---------------------------------------------------------------------------
 
+class DCTextColourChanger(object):
+    """
+    wx.DCTextColourChanger can be used to temporarily change the DC text
+    colour and restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Colour col) -> DCTextColourChanger
+
+        wx.DCTextColourChanger can be used to temporarily change the DC text
+        colour and restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCTextColourChanger_swiginit(self,_gdi_.new_DCTextColourChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCTextColourChanger
+    __del__ = lambda self : None;
+_gdi_.DCTextColourChanger_swigregister(DCTextColourChanger)
+
+class DCPenChanger(object):
+    """
+    wx.DCPenChanger can be used to temporarily change the DC pen and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Pen pen) -> DCPenChanger
+
+        wx.DCPenChanger can be used to temporarily change the DC pen and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCPenChanger_swiginit(self,_gdi_.new_DCPenChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCPenChanger
+    __del__ = lambda self : None;
+_gdi_.DCPenChanger_swigregister(DCPenChanger)
+
+class DCBrushChanger(object):
+    """
+    wx.DCBrushChanger can be used to temporarily change the DC brush and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Brush brush) -> DCBrushChanger
+
+        wx.DCBrushChanger can be used to temporarily change the DC brush and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCBrushChanger_swiginit(self,_gdi_.new_DCBrushChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCBrushChanger
+    __del__ = lambda self : None;
+_gdi_.DCBrushChanger_swigregister(DCBrushChanger)
+
+class DCClipper(object):
+    """
+    wx.wxDCClipper sets the DC's clipping region when it is constructed,
+    and then automatically destroys the clipping region when the clipper
+    goes out of scope.
+    """
+    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): 
+        """
+        __init__(self, DC dc, Region r) -> DCClipper
+        __init__(self, DC dc, Rect r) -> DCClipper
+        __init__(self, DC dc, int x, int y, int w, int h) -> DCClipper
+
+        wx.wxDCClipper sets the DC's clipping region when it is constructed,
+        and then automatically destroys the clipping region when the clipper
+        goes out of scope.
+        """
+        _gdi_.DCClipper_swiginit(self,_gdi_.new_DCClipper(*args))
+    __swig_destroy__ = _gdi_.delete_DCClipper
+    __del__ = lambda self : None;
+_gdi_.DCClipper_swigregister(DCClipper)
+
+#---------------------------------------------------------------------------
+
 class MemoryDC(DC):
     """
     A memory device context provides a means to draw graphics onto a
@@ -4829,38 +4911,105 @@ _gdi_.PrinterDC_swigregister(PrinterDC)
 
 #---------------------------------------------------------------------------
 
-class GraphicsPath(object):
+class GraphicsObject(_core.Object):
+    """Proxy of C++ GraphicsObject 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, GraphicsRenderer renderer=None) -> GraphicsObject"""
+        _gdi_.GraphicsObject_swiginit(self,_gdi_.new_GraphicsObject(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsObject
+    __del__ = lambda self : None;
+    def IsNull(*args, **kwargs):
+        """IsNull(self) -> bool"""
+        return _gdi_.GraphicsObject_IsNull(*args, **kwargs)
+
+    def GetRenderer(*args, **kwargs):
+        """GetRenderer(self) -> GraphicsRenderer"""
+        return _gdi_.GraphicsObject_GetRenderer(*args, **kwargs)
+
+_gdi_.GraphicsObject_swigregister(GraphicsObject)
+
+class GraphicsPen(GraphicsObject):
+    """Proxy of C++ GraphicsPen 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) -> GraphicsPen"""
+        _gdi_.GraphicsPen_swiginit(self,_gdi_.new_GraphicsPen(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsPen
+    __del__ = lambda self : None;
+_gdi_.GraphicsPen_swigregister(GraphicsPen)
+
+class GraphicsBrush(GraphicsObject):
+    """Proxy of C++ GraphicsBrush 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) -> GraphicsBrush"""
+        _gdi_.GraphicsBrush_swiginit(self,_gdi_.new_GraphicsBrush(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsBrush
+    __del__ = lambda self : None;
+_gdi_.GraphicsBrush_swigregister(GraphicsBrush)
+
+class GraphicsFont(GraphicsObject):
+    """Proxy of C++ GraphicsFont 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) -> GraphicsFont"""
+        _gdi_.GraphicsFont_swiginit(self,_gdi_.new_GraphicsFont(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsFont
+    __del__ = lambda self : None;
+_gdi_.GraphicsFont_swigregister(GraphicsFont)
+
+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')
     def __init__(self): raise AttributeError, "No constructor defined"
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def MoveToPoint(*args, **kwargs):
+    def Clone(*args, **kwargs):
+        """Clone(self) -> GraphicsPath"""
+        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
+
+    def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
+        MoveToPoint(self, Point2D p)
 
         Begins a new subpath at (x,y)
         """
-        return _gdi_.GraphicsPath_MoveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_MoveToPoint(*args)
 
-    def AddLineToPoint(*args, **kwargs):
+    def AddLineToPoint(*args):
         """
         AddLineToPoint(self, Double x, Double y)
+        AddLineToPoint(self, Point2D p)
 
         Adds a straight line from the current point to (x,y) 
         """
-        return _gdi_.GraphicsPath_AddLineToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddLineToPoint(*args)
 
-    def AddCurveToPoint(*args, **kwargs):
+    def AddCurveToPoint(*args):
         """
         AddCurveToPoint(self, Double cx1, Double cy1, Double cx2, Double cy2, Double x, 
             Double y)
+        AddCurveToPoint(self, Point2D c1, Point2D c2, Point2D e)
 
         Adds a cubic Bezier curve from the current point, using two control
         points and an end point
         """
-        return _gdi_.GraphicsPath_AddCurveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddCurveToPoint(*args)
+
+    def AddPath(*args, **kwargs):
+        """
+        AddPath(self, GraphicsPath path)
+
+        adds another path
+        """
+        return _gdi_.GraphicsPath_AddPath(*args, **kwargs)
 
     def CloseSubpath(*args, **kwargs):
         """
@@ -4878,15 +5027,17 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_GetCurrentPoint(*args, **kwargs)
 
-    def AddArc(*args, **kwargs):
+    def AddArc(*args):
         """
         AddArc(self, Double x, Double y, Double r, Double startAngle, Double endAngle, 
             bool clockwise)
+        AddArc(self, Point2D c, Double r, Double startAngle, Double endAngle, 
+            bool clockwise)
 
         Adds an arc of a circle centering at (x,y) with radius (r) from
         startAngle to endAngle
         """
-        return _gdi_.GraphicsPath_AddArc(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddArc(*args)
 
     def AddQuadCurveToPoint(*args, **kwargs):
         """
@@ -4922,9 +5073,179 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_AddArcToPoint(*args, **kwargs)
 
+    def AddEllipse(*args, **kwargs):
+        """
+        AddEllipse(self, Double x, Double y, Double w, Double h)
+
+        appends an ellipse
+        """
+        return _gdi_.GraphicsPath_AddEllipse(*args, **kwargs)
+
+    def AddRoundedRectangle(*args, **kwargs):
+        """
+        AddRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        appends a rounded rectangle
+        """
+        return _gdi_.GraphicsPath_AddRoundedRectangle(*args, **kwargs)
+
+    def GetNativePath(*args, **kwargs):
+        """
+        GetNativePath(self) -> void
+
+        returns the native path
+        """
+        return _gdi_.GraphicsPath_GetNativePath(*args, **kwargs)
+
+    def UnGetNativePath(*args, **kwargs):
+        """
+        UnGetNativePath(self, void p)
+
+        give the native path returned by GetNativePath() back (there might be some
+        deallocations necessary)
+        """
+        return _gdi_.GraphicsPath_UnGetNativePath(*args, **kwargs)
+
+    def Transform(*args, **kwargs):
+        """
+        Transform(self, GraphicsMatrix matrix)
+
+        transforms each point of this path by the matrix
+        """
+        return _gdi_.GraphicsPath_Transform(*args, **kwargs)
+
+    def GetBox(*args, **kwargs):
+        """
+        GetBox(self) -> wxRect2DDouble
+
+        gets the bounding box enclosing all points (possibly including control points)
+        """
+        return _gdi_.GraphicsPath_GetBox(*args, **kwargs)
+
+    def Contains(*args):
+        """
+        Contains(self, Double x, Double y, int fillStyle=WINDING_RULE) -> bool
+        Contains(self, wxPoint2DDouble c, int fillStyle=WINDING_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)
 
-class GraphicsContext(object):
+        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"""
     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"
@@ -4946,86 +5267,187 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
     CreateFromNative = staticmethod(CreateFromNative)
+    def CreateFromNativeWindow(*args, **kwargs):
+        """CreateFromNativeWindow(void window) -> GraphicsContext"""
+        return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+    CreateFromNativeWindow = staticmethod(CreateFromNativeWindow)
     def CreatePath(*args, **kwargs):
-        """CreatePath(self) -> GraphicsPath"""
+        """
+        CreatePath(self) -> GraphicsPath
+
+        creates a path instance that corresponds to the type of graphics context, ie GDIPlus, Cairo, CoreGraphics ...
+        """
         return _gdi_.GraphicsContext_CreatePath(*args, **kwargs)
 
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsContext_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsContext_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+
+        sets the brush to a linear gradient, starting at (x1,y1) with color c1
+        to (x2,y2) with color c2
+        """
+        return _gdi_.GraphicsContext_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+
+        sets the brush to a radial gradient originating at (xo,yc) with color
+        oColor and ends on a circle around (xc,yc) with radius r and color
+        cColor
+
+        """
+        return _gdi_.GraphicsContext_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """
+        CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont
+
+        sets the font
+        """
+        return _gdi_.GraphicsContext_CreateFont(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+
+        create a 'native' matrix corresponding to these values
+        """
+        return _gdi_.GraphicsContext_CreateMatrix(*args, **kwargs)
+
     def PushState(*args, **kwargs):
-        """PushState(self)"""
+        """
+        PushState(self)
+
+        push the current state of the context, ie the transformation matrix on a stack
+        """
         return _gdi_.GraphicsContext_PushState(*args, **kwargs)
 
     def PopState(*args, **kwargs):
-        """PopState(self)"""
+        """
+        PopState(self)
+
+        pops a stored state from the stack
+        """
         return _gdi_.GraphicsContext_PopState(*args, **kwargs)
 
     def ClipRegion(*args, **kwargs):
-        """ClipRegion(self, Region region)"""
+        """
+        ClipRegion(self, Region region)
+
+        clips drawings to the region
+        """
         return _gdi_.GraphicsContext_ClipRegion(*args, **kwargs)
 
     def Clip(*args, **kwargs):
-        """Clip(self, Double x, Double y, Double w, Double h)"""
+        """
+        Clip(self, Double x, Double y, Double w, Double h)
+
+        clips drawings to the rect
+        """
         return _gdi_.GraphicsContext_Clip(*args, **kwargs)
 
     def ResetClip(*args, **kwargs):
-        """ResetClip(self)"""
+        """
+        ResetClip(self)
+
+        resets the clipping to original extent
+        """
         return _gdi_.GraphicsContext_ResetClip(*args, **kwargs)
 
     def GetNativeContext(*args, **kwargs):
-        """GetNativeContext(self) -> void"""
+        """
+        GetNativeContext(self) -> void
+
+        returns the native context
+        """
         return _gdi_.GraphicsContext_GetNativeContext(*args, **kwargs)
 
     def Translate(*args, **kwargs):
-        """Translate(self, Double dx, Double dy)"""
+        """
+        Translate(self, Double dx, Double dy)
+
+        translate the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Translate(*args, **kwargs)
 
     def Scale(*args, **kwargs):
-        """Scale(self, Double xScale, Double yScale)"""
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        scale the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Scale(*args, **kwargs)
 
     def Rotate(*args, **kwargs):
-        """Rotate(self, Double angle)"""
-        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
-
-    def SetPen(*args, **kwargs):
-        """SetPen(self, Pen pen)"""
-        return _gdi_.GraphicsContext_SetPen(*args, **kwargs)
+        """
+        Rotate(self, Double angle)
 
-    def SetBrush(*args, **kwargs):
-        """SetBrush(self, Brush brush)"""
-        return _gdi_.GraphicsContext_SetBrush(*args, **kwargs)
+        rotate (radians) the current transformation matrix CTM of the context
+        """
+        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
-    def SetLinearGradientBrush(*args, **kwargs):
+    def SetPen(*args):
         """
-        SetLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
-            Colour c2)
+        SetPen(self, GraphicsPen pen)
+        SetPen(self, Pen pen)
+
+        sets the stroke pen
         """
-        return _gdi_.GraphicsContext_SetLinearGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetPen(*args)
 
-    def SetRadialGradientBrush(*args, **kwargs):
+    def SetBrush(*args):
         """
-        SetRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
-            Colour oColour, Colour cColour)
+        SetBrush(self, GraphicsBrush brush)
+        SetBrush(self, Brush brush)
+
+        sets the brush for filling
         """
-        return _gdi_.GraphicsContext_SetRadialGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetBrush(*args)
 
-    def SetFont(*args, **kwargs):
-        """SetFont(self, Font font)"""
-        return _gdi_.GraphicsContext_SetFont(*args, **kwargs)
+    def SetFont(*args):
+        """
+        SetFont(self, GraphicsFont font)
+        SetFont(self, Font font, Colour colour=*wxBLACK)
 
-    def SetTextColour(*args, **kwargs):
-        """SetTextColour(self, Colour col)"""
-        return _gdi_.GraphicsContext_SetTextColour(*args, **kwargs)
+        sets the font
+        """
+        return _gdi_.GraphicsContext_SetFont(*args)
 
     def StrokePath(*args, **kwargs):
-        """StrokePath(self, GraphicsPath path)"""
+        """
+        StrokePath(self, GraphicsPath path)
+
+        strokes along a path with the current pen
+        """
         return _gdi_.GraphicsContext_StrokePath(*args, **kwargs)
 
     def FillPath(*args, **kwargs):
-        """FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        fills a path with the current brush
+        """
         return _gdi_.GraphicsContext_FillPath(*args, **kwargs)
 
     def DrawPath(*args, **kwargs):
-        """DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        draws a path by first filling and then stroking
+        """
         return _gdi_.GraphicsContext_DrawPath(*args, **kwargs)
 
     def DrawText(*args, **kwargs):
@@ -5057,33 +5479,69 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_DrawIcon(*args, **kwargs)
 
     def StrokeLine(*args, **kwargs):
-        """StrokeLine(self, Double x1, Double y1, Double x2, Double y2)"""
+        """
+        StrokeLine(self, Double x1, Double y1, Double x2, Double y2)
+
+        strokes a single line
+        """
         return _gdi_.GraphicsContext_StrokeLine(*args, **kwargs)
 
     def StrokeLines(*args, **kwargs):
-        """StrokeLines(self, List points)"""
+        """
+        StrokeLines(self, List points)
+
+        stroke lines connecting each of the points
+        """
         return _gdi_.GraphicsContext_StrokeLines(*args, **kwargs)
 
     def StrokeLineSegements(*args, **kwargs):
-        """StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)"""
+        """
+        StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)
+
+        stroke disconnected lines from begin to end points
+        """
         return _gdi_.GraphicsContext_StrokeLineSegements(*args, **kwargs)
 
     def DrawLines(*args, **kwargs):
-        """DrawLines(self, size_t points, int fillStyle=WINDING_RULE)"""
+        """
+        DrawLines(self, size_t points, int fillStyle=WINDING_RULE)
+
+        draws a polygon
+        """
         return _gdi_.GraphicsContext_DrawLines(*args, **kwargs)
 
     def DrawRectangle(*args, **kwargs):
-        """DrawRectangle(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawRectangle(self, Double x, Double y, Double w, Double h)
+
+        draws a rectangle
+        """
         return _gdi_.GraphicsContext_DrawRectangle(*args, **kwargs)
 
     def DrawEllipse(*args, **kwargs):
-        """DrawEllipse(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawEllipse(self, Double x, Double y, Double w, Double h)
+
+        draws an ellipse
+        """
         return _gdi_.GraphicsContext_DrawEllipse(*args, **kwargs)
 
     def DrawRoundedRectangle(*args, **kwargs):
-        """DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)"""
+        """
+        DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        draws a rounded rectangle
+        """
         return _gdi_.GraphicsContext_DrawRoundedRectangle(*args, **kwargs)
 
+    def ShouldOffset(*args, **kwargs):
+        """
+        ShouldOffset(self) -> bool
+
+        helper to determine if a 0.5 offset should be applied for the drawing operation
+        """
+        return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
+
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
 
 def GraphicsContext_Create(*args):
@@ -5099,6 +5557,80 @@ def GraphicsContext_CreateFromNative(*args, **kwargs):
   """GraphicsContext_CreateFromNative(void context) -> GraphicsContext"""
   return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
+def GraphicsContext_CreateFromNativeWindow(*args, **kwargs):
+  """GraphicsContext_CreateFromNativeWindow(void window) -> GraphicsContext"""
+  return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+class GraphicsRenderer(_core.Object):
+    """Proxy of C++ GraphicsRenderer 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_GraphicsRenderer
+    __del__ = lambda self : None;
+    def GetDefaultRenderer(*args, **kwargs):
+        """GetDefaultRenderer() -> GraphicsRenderer"""
+        return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args, **kwargs)
+
+    GetDefaultRenderer = staticmethod(GetDefaultRenderer)
+    def CreateContext(*args):
+        """
+        CreateContext(self, WindowDC dc) -> GraphicsContext
+        CreateContext(self, Window window) -> GraphicsContext
+        """
+        return _gdi_.GraphicsRenderer_CreateContext(*args)
+
+    def CreateContextFromNativeContext(*args, **kwargs):
+        """CreateContextFromNativeContext(self, void context) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeContext(*args, **kwargs)
+
+    def CreateContextFromNativeWindow(*args, **kwargs):
+        """CreateContextFromNativeWindow(self, void window) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeWindow(*args, **kwargs)
+
+    def CreatePath(*args, **kwargs):
+        """CreatePath(self) -> GraphicsPath"""
+        return _gdi_.GraphicsRenderer_CreatePath(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+        """
+        return _gdi_.GraphicsRenderer_CreateMatrix(*args, **kwargs)
+
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsRenderer_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsRenderer_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont"""
+        return _gdi_.GraphicsRenderer_CreateFont(*args, **kwargs)
+
+_gdi_.GraphicsRenderer_swigregister(GraphicsRenderer)
+
+def GraphicsRenderer_GetDefaultRenderer(*args):
+  """GraphicsRenderer_GetDefaultRenderer() -> GraphicsRenderer"""
+  return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args)
+
 class GCDC(DC):
     """Proxy of C++ GCDC class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -5430,7 +5962,6 @@ class GDIObjListBase(object):
     __swig_destroy__ = _gdi_.delete_GDIObjListBase
     __del__ = lambda self : None;
 _gdi_.GDIObjListBase_swigregister(GDIObjListBase)
-cvar = _gdi_.cvar
 NullBitmap = cvar.NullBitmap
 NullIcon = cvar.NullIcon
 NullCursor = cvar.NullCursor
index 14b3af72240449418912106c1ecd760f7ff220e9..8244e8a4a0dd403a991eee7d8717e2fc77a38a6c 100644 (file)
@@ -2500,129 +2500,141 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxControlWithItems swig_types[34]
 #define SWIGTYPE_p_wxCursor swig_types[35]
 #define SWIGTYPE_p_wxDC swig_types[36]
-#define SWIGTYPE_p_wxDCOverlay swig_types[37]
-#define SWIGTYPE_p_wxDash swig_types[38]
-#define SWIGTYPE_p_wxDateEvent swig_types[39]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[40]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[41]
-#define SWIGTYPE_p_wxDuplexMode swig_types[42]
-#define SWIGTYPE_p_wxEffects swig_types[43]
-#define SWIGTYPE_p_wxEncodingConverter swig_types[44]
-#define SWIGTYPE_p_wxEraseEvent swig_types[45]
-#define SWIGTYPE_p_wxEvent swig_types[46]
-#define SWIGTYPE_p_wxEvtHandler swig_types[47]
-#define SWIGTYPE_p_wxFSFile swig_types[48]
-#define SWIGTYPE_p_wxFileSystem swig_types[49]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[50]
-#define SWIGTYPE_p_wxFocusEvent swig_types[51]
-#define SWIGTYPE_p_wxFont swig_types[52]
-#define SWIGTYPE_p_wxFontList swig_types[53]
-#define SWIGTYPE_p_wxFontMapper swig_types[54]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[55]
-#define SWIGTYPE_p_wxGCDC swig_types[56]
-#define SWIGTYPE_p_wxGDIObjListBase swig_types[57]
-#define SWIGTYPE_p_wxGDIObject swig_types[58]
-#define SWIGTYPE_p_wxGIFHandler swig_types[59]
-#define SWIGTYPE_p_wxGraphicsContext swig_types[60]
-#define SWIGTYPE_p_wxGraphicsPath swig_types[61]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[62]
-#define SWIGTYPE_p_wxGridSizer swig_types[63]
-#define SWIGTYPE_p_wxHeaderButtonParams swig_types[64]
-#define SWIGTYPE_p_wxICOHandler swig_types[65]
-#define SWIGTYPE_p_wxIcon swig_types[66]
-#define SWIGTYPE_p_wxIconBundle swig_types[67]
-#define SWIGTYPE_p_wxIconLocation swig_types[68]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[69]
-#define SWIGTYPE_p_wxIdleEvent swig_types[70]
-#define SWIGTYPE_p_wxImage swig_types[71]
-#define SWIGTYPE_p_wxImageHandler swig_types[72]
-#define SWIGTYPE_p_wxImageList swig_types[73]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[74]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[75]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[76]
-#define SWIGTYPE_p_wxKeyEvent swig_types[77]
-#define SWIGTYPE_p_wxLanguageInfo swig_types[78]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[79]
-#define SWIGTYPE_p_wxLocale swig_types[80]
-#define SWIGTYPE_p_wxMask swig_types[81]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[82]
-#define SWIGTYPE_p_wxMemoryDC swig_types[83]
-#define SWIGTYPE_p_wxMenu swig_types[84]
-#define SWIGTYPE_p_wxMenuBar swig_types[85]
-#define SWIGTYPE_p_wxMenuEvent swig_types[86]
-#define SWIGTYPE_p_wxMenuItem swig_types[87]
-#define SWIGTYPE_p_wxMetaFile swig_types[88]
-#define SWIGTYPE_p_wxMetaFileDC swig_types[89]
-#define SWIGTYPE_p_wxMirrorDC swig_types[90]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[91]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[92]
-#define SWIGTYPE_p_wxMouseEvent swig_types[93]
-#define SWIGTYPE_p_wxMoveEvent swig_types[94]
-#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[95]
-#define SWIGTYPE_p_wxNativeFontInfo swig_types[96]
-#define SWIGTYPE_p_wxNativePixelData swig_types[97]
-#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[98]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[99]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[100]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[101]
-#define SWIGTYPE_p_wxObject swig_types[102]
-#define SWIGTYPE_p_wxOverlay swig_types[103]
-#define SWIGTYPE_p_wxPCXHandler swig_types[104]
-#define SWIGTYPE_p_wxPNGHandler swig_types[105]
-#define SWIGTYPE_p_wxPNMHandler swig_types[106]
-#define SWIGTYPE_p_wxPaintDC swig_types[107]
-#define SWIGTYPE_p_wxPaintEvent swig_types[108]
-#define SWIGTYPE_p_wxPalette swig_types[109]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[110]
-#define SWIGTYPE_p_wxPaperSize swig_types[111]
-#define SWIGTYPE_p_wxPen swig_types[112]
-#define SWIGTYPE_p_wxPenList swig_types[113]
-#define SWIGTYPE_p_wxPixelDataBase swig_types[114]
-#define SWIGTYPE_p_wxPoint swig_types[115]
-#define SWIGTYPE_p_wxPoint2D swig_types[116]
-#define SWIGTYPE_p_wxPostScriptDC swig_types[117]
-#define SWIGTYPE_p_wxPrintData swig_types[118]
-#define SWIGTYPE_p_wxPrinterDC swig_types[119]
-#define SWIGTYPE_p_wxPseudoDC swig_types[120]
-#define SWIGTYPE_p_wxPyApp swig_types[121]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[122]
-#define SWIGTYPE_p_wxPyEvent swig_types[123]
-#define SWIGTYPE_p_wxPyFontEnumerator swig_types[124]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[125]
-#define SWIGTYPE_p_wxPyLocale swig_types[126]
-#define SWIGTYPE_p_wxPySizer swig_types[127]
-#define SWIGTYPE_p_wxPyValidator swig_types[128]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[129]
-#define SWIGTYPE_p_wxRect swig_types[130]
-#define SWIGTYPE_p_wxRegion swig_types[131]
-#define SWIGTYPE_p_wxRegionIterator swig_types[132]
-#define SWIGTYPE_p_wxRendererNative swig_types[133]
-#define SWIGTYPE_p_wxRendererVersion swig_types[134]
-#define SWIGTYPE_p_wxScreenDC swig_types[135]
-#define SWIGTYPE_p_wxScrollEvent swig_types[136]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[137]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[138]
-#define SWIGTYPE_p_wxShowEvent swig_types[139]
-#define SWIGTYPE_p_wxSize swig_types[140]
-#define SWIGTYPE_p_wxSizeEvent swig_types[141]
-#define SWIGTYPE_p_wxSizer swig_types[142]
-#define SWIGTYPE_p_wxSizerItem swig_types[143]
-#define SWIGTYPE_p_wxSplitterRenderParams swig_types[144]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[145]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[146]
-#define SWIGTYPE_p_wxStockGDI swig_types[147]
-#define SWIGTYPE_p_wxString swig_types[148]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[149]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[150]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[151]
-#define SWIGTYPE_p_wxValidator swig_types[152]
-#define SWIGTYPE_p_wxWindow swig_types[153]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[154]
-#define SWIGTYPE_p_wxWindowDC swig_types[155]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[156]
-#define SWIGTYPE_p_wxXPMHandler swig_types[157]
-static swig_type_info *swig_types[159];
-static swig_module_info swig_module = {swig_types, 158, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDCBrushChanger swig_types[37]
+#define SWIGTYPE_p_wxDCClipper swig_types[38]
+#define SWIGTYPE_p_wxDCOverlay swig_types[39]
+#define SWIGTYPE_p_wxDCPenChanger swig_types[40]
+#define SWIGTYPE_p_wxDCTextColourChanger swig_types[41]
+#define SWIGTYPE_p_wxDash swig_types[42]
+#define SWIGTYPE_p_wxDateEvent swig_types[43]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[44]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[45]
+#define SWIGTYPE_p_wxDuplexMode swig_types[46]
+#define SWIGTYPE_p_wxEffects swig_types[47]
+#define SWIGTYPE_p_wxEncodingConverter swig_types[48]
+#define SWIGTYPE_p_wxEraseEvent swig_types[49]
+#define SWIGTYPE_p_wxEvent swig_types[50]
+#define SWIGTYPE_p_wxEvtHandler swig_types[51]
+#define SWIGTYPE_p_wxFSFile swig_types[52]
+#define SWIGTYPE_p_wxFileSystem swig_types[53]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[54]
+#define SWIGTYPE_p_wxFocusEvent swig_types[55]
+#define SWIGTYPE_p_wxFont swig_types[56]
+#define SWIGTYPE_p_wxFontList swig_types[57]
+#define SWIGTYPE_p_wxFontMapper swig_types[58]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[59]
+#define SWIGTYPE_p_wxGCDC swig_types[60]
+#define SWIGTYPE_p_wxGDIObjListBase swig_types[61]
+#define SWIGTYPE_p_wxGDIObject swig_types[62]
+#define SWIGTYPE_p_wxGIFHandler swig_types[63]
+#define SWIGTYPE_p_wxGraphicsBrush swig_types[64]
+#define SWIGTYPE_p_wxGraphicsContext swig_types[65]
+#define SWIGTYPE_p_wxGraphicsFont swig_types[66]
+#define SWIGTYPE_p_wxGraphicsMatrix swig_types[67]
+#define SWIGTYPE_p_wxGraphicsObject swig_types[68]
+#define SWIGTYPE_p_wxGraphicsPath swig_types[69]
+#define SWIGTYPE_p_wxGraphicsPen swig_types[70]
+#define SWIGTYPE_p_wxGraphicsRenderer swig_types[71]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[72]
+#define SWIGTYPE_p_wxGridSizer swig_types[73]
+#define SWIGTYPE_p_wxHeaderButtonParams swig_types[74]
+#define SWIGTYPE_p_wxICOHandler swig_types[75]
+#define SWIGTYPE_p_wxIcon swig_types[76]
+#define SWIGTYPE_p_wxIconBundle swig_types[77]
+#define SWIGTYPE_p_wxIconLocation swig_types[78]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[79]
+#define SWIGTYPE_p_wxIdleEvent swig_types[80]
+#define SWIGTYPE_p_wxImage swig_types[81]
+#define SWIGTYPE_p_wxImageHandler swig_types[82]
+#define SWIGTYPE_p_wxImageList swig_types[83]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[84]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[85]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[86]
+#define SWIGTYPE_p_wxKeyEvent swig_types[87]
+#define SWIGTYPE_p_wxLanguageInfo swig_types[88]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[89]
+#define SWIGTYPE_p_wxLocale swig_types[90]
+#define SWIGTYPE_p_wxMask swig_types[91]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[92]
+#define SWIGTYPE_p_wxMemoryDC swig_types[93]
+#define SWIGTYPE_p_wxMenu swig_types[94]
+#define SWIGTYPE_p_wxMenuBar swig_types[95]
+#define SWIGTYPE_p_wxMenuEvent swig_types[96]
+#define SWIGTYPE_p_wxMenuItem swig_types[97]
+#define SWIGTYPE_p_wxMetaFile swig_types[98]
+#define SWIGTYPE_p_wxMetaFileDC swig_types[99]
+#define SWIGTYPE_p_wxMirrorDC swig_types[100]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[101]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[102]
+#define SWIGTYPE_p_wxMouseEvent swig_types[103]
+#define SWIGTYPE_p_wxMoveEvent swig_types[104]
+#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[105]
+#define SWIGTYPE_p_wxNativeFontInfo swig_types[106]
+#define SWIGTYPE_p_wxNativePixelData swig_types[107]
+#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[108]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[109]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[110]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[111]
+#define SWIGTYPE_p_wxObject swig_types[112]
+#define SWIGTYPE_p_wxOverlay swig_types[113]
+#define SWIGTYPE_p_wxPCXHandler swig_types[114]
+#define SWIGTYPE_p_wxPNGHandler swig_types[115]
+#define SWIGTYPE_p_wxPNMHandler swig_types[116]
+#define SWIGTYPE_p_wxPaintDC swig_types[117]
+#define SWIGTYPE_p_wxPaintEvent swig_types[118]
+#define SWIGTYPE_p_wxPalette swig_types[119]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[120]
+#define SWIGTYPE_p_wxPaperSize swig_types[121]
+#define SWIGTYPE_p_wxPen swig_types[122]
+#define SWIGTYPE_p_wxPenList swig_types[123]
+#define SWIGTYPE_p_wxPixelDataBase swig_types[124]
+#define SWIGTYPE_p_wxPoint swig_types[125]
+#define SWIGTYPE_p_wxPoint2D swig_types[126]
+#define SWIGTYPE_p_wxPoint2DDouble swig_types[127]
+#define SWIGTYPE_p_wxPostScriptDC swig_types[128]
+#define SWIGTYPE_p_wxPrintData swig_types[129]
+#define SWIGTYPE_p_wxPrinterDC swig_types[130]
+#define SWIGTYPE_p_wxPseudoDC swig_types[131]
+#define SWIGTYPE_p_wxPyApp swig_types[132]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[133]
+#define SWIGTYPE_p_wxPyEvent swig_types[134]
+#define SWIGTYPE_p_wxPyFontEnumerator swig_types[135]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[136]
+#define SWIGTYPE_p_wxPyLocale swig_types[137]
+#define SWIGTYPE_p_wxPySizer swig_types[138]
+#define SWIGTYPE_p_wxPyValidator swig_types[139]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[140]
+#define SWIGTYPE_p_wxRect swig_types[141]
+#define SWIGTYPE_p_wxRect2DDouble swig_types[142]
+#define SWIGTYPE_p_wxRegion swig_types[143]
+#define SWIGTYPE_p_wxRegionIterator swig_types[144]
+#define SWIGTYPE_p_wxRendererNative swig_types[145]
+#define SWIGTYPE_p_wxRendererVersion swig_types[146]
+#define SWIGTYPE_p_wxScreenDC swig_types[147]
+#define SWIGTYPE_p_wxScrollEvent swig_types[148]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[149]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[150]
+#define SWIGTYPE_p_wxShowEvent swig_types[151]
+#define SWIGTYPE_p_wxSize swig_types[152]
+#define SWIGTYPE_p_wxSizeEvent swig_types[153]
+#define SWIGTYPE_p_wxSizer swig_types[154]
+#define SWIGTYPE_p_wxSizerItem swig_types[155]
+#define SWIGTYPE_p_wxSplitterRenderParams swig_types[156]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[157]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[158]
+#define SWIGTYPE_p_wxStockGDI swig_types[159]
+#define SWIGTYPE_p_wxString swig_types[160]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[161]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[162]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[163]
+#define SWIGTYPE_p_wxValidator swig_types[164]
+#define SWIGTYPE_p_wxWindow swig_types[165]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[166]
+#define SWIGTYPE_p_wxWindowDC swig_types[167]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[168]
+#define SWIGTYPE_p_wxXPMHandler swig_types[169]
+static swig_type_info *swig_types[171];
+static swig_module_info swig_module = {swig_types, 170, 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)
 
@@ -3559,104 +3571,253 @@ public:
 
 
 #if !wxUSE_GRAPHICS_CONTEXT
-// C++ stub classes for platforms that don't have wxGraphicsContext yet.
+// C++ stub classes for platforms or build configurations that don't have
+// wxGraphicsContext yet.
 
-class wxGraphicsPath
+
+class wxGraphicsObject : public wxObject
 {
 public :
-    wxGraphicsPath() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    wxGraphicsObject( wxGraphicsRenderer*  ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsObject is not available on this platform.");
+    }
+    wxGraphicsObject( const wxGraphicsObject&  ) {}
+    virtual ~wxGraphicsObject() {}
+    bool IsNull() const { return false; }
+    wxGraphicsRenderer* GetRenderer() const { return NULL; }
+} ;
+
+
+
+class wxGraphicsPen : public wxGraphicsObject
+{
+    wxGraphicsPen()  {}
+    virtual ~wxGraphicsPen() {}
+} ;
+wxGraphicsPen wxNullGraphicsPen;
+
+
+
+class wxGraphicsBrush : public wxGraphicsObject
+{
+public :
+    wxGraphicsBrush() {}
+    virtual ~wxGraphicsBrush() {}
+} ;
+wxGraphicsBrush wxNullGraphicsBrush;
+
+
+
+class wxGraphicsFont : public wxGraphicsObject
+{
+public :
+    wxGraphicsFont() {}
+    virtual ~wxGraphicsFont() {}
+} ;
+wxGraphicsFont wxNullGraphicsFont;
+
+
+
+class wxGraphicsPath : public wxGraphicsObject
+{
+public :
+    wxGraphicsPath(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsPath is not available on this platform.");
     }
     virtual ~wxGraphicsPath() {}
-    
+
+    virtual wxGraphicsPath *Clone() const { return NULL; }
+
     void MoveToPoint( wxDouble, wxDouble ) {}
-    void AddLineToPoint( wxDouble, wxDouble ) {} 
+    void MoveToPoint( const wxPoint2DDouble& ) {}
+    void AddLineToPoint( wxDouble, wxDouble ) {}
+    void AddLineToPoint( const wxPoint2DDouble& ) {}
     void AddCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, wxDouble ) {}
+    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
+    void AddPath( const wxGraphicsPath* ) {}
     void CloseSubpath() {}
     void GetCurrentPoint( wxDouble&, wxDouble&) {}
+    wxPoint2DDouble GetCurrentPoint() { reutrn wxPoint2D(0,0); }
     void AddArc( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, bool ) {}
+    void AddArc( const wxPoint2DDouble& , wxDouble, wxDouble , wxDouble , bool ) {}
 
     void AddQuadCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddRectangle( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddCircle( wxDouble, wxDouble, wxDouble ) {}
     void AddArcToPoint( wxDouble, wxDouble , wxDouble, wxDouble, wxDouble )  {}
 
-    wxPoint2DDouble GetCurrentPoint() { return wxPoint2DDouble(0,0); }
-    void MoveToPoint( const wxPoint2DDouble& ) {}
-    void AddLineToPoint( const wxPoint2DDouble&) {}
-    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
-    void AddArc( const wxPoint2DDouble&, wxDouble, wxDouble, wxDouble, bool) {}
+    void AddEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void AddRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void * GetNativePath() const { return NULL; }
+    void UnGetNativePath(void *) {}
+    void Transform( wxGraphicsMatrix* ) {}
+    void GetBox(wxDouble *, wxDouble *, wxDouble *, wxDouble *) {}
+    wxRect2D GetBox() { return wxRect2D(0,0,0,0); }
+
+    bool Contains( wxDouble , wxDouble , int ) { return false; }
+    bool Contains( const wxPoint2DDouble& , int ) { return false; }
+};
+
+
+class wxGraphicsMatrix : public wxGraphicsObject
+{
+public :
+    wxGraphicsMatrix(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "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 ,
+                     wxDouble , wxDouble ) {}
+    virtual void Invert() {}
+    virtual bool IsEqual( const wxGraphicsMatrix* t) const  {}
+    virtual bool IsIdentity() { return false; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble  ) {}
+    virtual void Rotate( wxDouble  ) {}
+    virtual void TransformPoint( wxDouble *, wxDouble * ) {}
+    virtual void TransformDistance( wxDouble *, wxDouble * ) {}
+    virtual void * GetNativeMatrix() const { return NULL; }
 };
 
 
-class wxGraphicsContext
+
+class wxGraphicsContext : public wxGraphicsObject
 {
 public:
-    wxGraphicsContext() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    wxGraphicsContext(wxGraphicsRenderer* ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsContext is not available on this platform.");
     }
+
     virtual ~wxGraphicsContext() {}
-    
-    static wxGraphicsContext* Create( const wxWindowDC&) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    static wxGraphicsContext* Create( const wxWindowDC& )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
+                        "wx.GraphicsContext is not available on this platform.");
     }
 
-    static wxGraphicsContext* CreateFromNative( void *  ) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    static wxGraphicsContext* CreateFromNative( void *  )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
-    }        
+                        "wx.GraphicsContext is not available on this platform.");
+    }
 
-    wxGraphicsPath * CreatePath() { return NULL; }
-    void PushState() {}
-    void PopState() {}
-    void Clip( const wxRegion & ) {}
-    void Clip( wxDouble, wxDouble, wxDouble, wxDouble ) {}
-    void ResetClip() {}
-    void * GetNativeContext() { return NULL; }
-    void Translate( wxDouble  , wxDouble  ) {}
-    void Scale( wxDouble  , wxDouble  ) {}
-    void Rotate( wxDouble  ) {}
-    void SetPen( const wxPen & ) {}
-    void SetBrush( const wxBrush & ) {}
-    void SetLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , 
-        const wxColour&, const wxColour&) {}
-    void SetRadialGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
-        const wxColour &, const wxColour &) {}
-    void SetFont( const wxFont & ) {}
-    void SetTextColour( const wxColour & ) {}
-    void StrokePath( const wxGraphicsPath * ) {}
-    void FillPath( const wxGraphicsPath *, int  ) {}
-    void DrawPath( const wxGraphicsPath *, int  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble , wxDouble  ) {}
-    void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
-                        wxDouble *, wxDouble * ) const {}
-    void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const {}
-    void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
-    void DrawLines( size_t , const wxPoint2DDouble *, int  ) {}
-    void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void DrawEllipse( wxDouble , wxDouble,  wxDouble , wxDouble) {}
-    void DrawRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    static wxGraphicsContext* CreateFromNativeWindow( void *  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    static wxGraphicsContext* Create( wxWindow*  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return NULL; }
+
+    virtual wxGraphicsBrush CreateBrush(const wxBrush& ) { return NULL; }
+
+    virtual wxGraphicsBrush CreateLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                        const wxColour&, const wxColour&) { return NULL; }
+
+    virtual wxGraphicsBrush CreateRadialGradientBrush( wxDouble xo, wxDouble yo,
+                                                        wxDouble xc, wxDouble yc, wxDouble radius,
+                                                        const wxColour &oColor, const wxColour &cColor) { return NULL; }
+
+    virtual wxGraphicsFont CreateFont( const wxFont &, const wxColour & )  { return NULL; }
+
+    virtual wxGraphicsMatrix* CreateMatrix( wxDouble, wxDouble, wxDouble, wxDouble,
+                                            wxDouble, wxDouble)  { return NULL; }
+
+    virtual void PushState() {}
+    virtual void PopState() {}
+    virtual void Clip( const wxRegion & ) {}
+    virtual void Clip( wxDouble , wxDouble , wxDouble , wxDouble  ) {}
+    virtual void ResetClip() {}
+    virtual void * GetNativeContext() { return NULL; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble ) {}
+    virtual void Rotate( wxDouble ) {}
+    virtual void ConcatTransform( const wxGraphicsMatrix* ) {}
+    virtual void SetTransform( const wxGraphicsMatrix* ) {}
+    virtual void GetTransform( wxGraphicsMatrix* ) {}
+
+    virtual void SetPen( const wxGraphicsPen& ) {}
+    void SetPen( const wxPen& ) {}
+
+    virtual void SetBrush( const wxGraphicsBrush& ) {}
+    void SetBrush( const wxBrush& ) {}
+
+    virtual void SetFont( const wxGraphicsFont& ) {}
+    void SetFont( const wxFont&, const wxColour& ) {}
+
+    virtual void StrokePath( const wxGraphicsPath * ) {}
+    virtual void FillPath( const wxGraphicsPath *, int ) {}
+    virtual void DrawPath( const wxGraphicsPath *, int ) {}
+
+    virtual void DrawText( const wxString &, wxDouble , wxDouble  )  {}
+    virtual void DrawText( const wxString &, wxDouble , wxDouble , wxDouble ) {}
+    virtual void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
+                                wxDouble *, wxDouble * ) const {}
+    virtual void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const  {}
+
+    virtual void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+    virtual void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+
+    virtual void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
+    virtual void DrawLines( size_t , const wxPoint2DDouble *, int ) {}
+    virtual void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawRoundedRectangle( wxDouble  wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual bool ShouldOffset() const { return false; }
+};
+
+
+class wxGraphicsRenderer : public wxObject
+{
+public :
+    wxGraphicsRenderer() {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    }
+
+    virtual ~wxGraphicsRenderer() {}
+
+    static wxGraphicsRenderer* GetDefaultRenderer(
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    );
+
+    virtual wxGraphicsContext * CreateContext( const wxWindowDC& ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeContext( void *  ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeWindow( void *  )  { return NULL; }
+    virtual wxGraphicsContext * CreateContext( wxWindow*  ) { return NULL; }
+
+    virtual wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsMatrix * CreateMatrix( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                             wxDouble , wxDouble ) { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return wxNullGaphicsPen; }
+    virtual wxGraphicsBrush CreateBrush(const wxBrush&  )  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateLinearGradientBrush(xDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour&, const wxColour&)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateRadialGradientBrush(wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour &, const wxColour &)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsFont CreateFont( const wxFont & , const wxColour & ) { return wxNullGaphicsFont; }
 };
 
 
+
 class wxGCDC: public wxWindowDC
 {
 public:
@@ -3666,14 +3827,14 @@ public:
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
      }
-    
+
     wxGCDC() {
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         PyErr_SetString(PyExc_NotImplementedError,
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
     }
-    
+
     virtual ~wxGCDC() {}
 
     wxGraphicsContext* GetGraphicsContext() { return NULL; }
@@ -23129,6 +23290,458 @@ SWIGINTERN PyObject *DC_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *_wrap_new_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxColour *arg2 = 0 ;
+  wxDCTextColourChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxColour temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCTextColourChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCTextColourChanger *)new wxDCTextColourChanger(*arg1,(wxColour const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCTextColourChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCTextColourChanger *arg1 = (wxDCTextColourChanger *) 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_wxDCTextColourChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDCTextColourChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCTextColourChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCTextColourChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCTextColourChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCTextColourChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxPen *arg2 = 0 ;
+  wxDCPenChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCPenChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCPenChanger *)new wxDCPenChanger(*arg1,(wxPen const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCPenChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCPenChanger *arg1 = (wxDCPenChanger *) 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_wxDCPenChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCPenChanger" "', expected argument " "1"" of type '" "wxDCPenChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCPenChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCPenChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCPenChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCPenChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxBrush *arg2 = 0 ;
+  wxDCBrushChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCBrushChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCBrushChanger *)new wxDCBrushChanger(*arg1,(wxBrush const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCBrushChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCBrushChanger *arg1 = (wxDCBrushChanger *) 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_wxDCBrushChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCBrushChanger" "', expected argument " "1"" of type '" "wxDCBrushChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCBrushChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCBrushChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCBrushChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCBrushChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRegion *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxRegion,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxRegion * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRegion const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRect *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_2(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  int arg2 ;
+  int arg3 ;
+  int arg4 ;
+  int arg5 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  int val5 ;
+  int ecode5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_DCClipper" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_DCClipper" "', expected argument " "4"" of type '" "int""'");
+  } 
+  arg4 = static_cast< int >(val4);
+  ecode5 = SWIG_AsVal_int(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_DCClipper" "', expected argument " "5"" of type '" "int""'");
+  } 
+  arg5 = static_cast< int >(val5);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,arg2,arg3,arg4,arg5);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"new_DCClipper",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxRegion, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_new_DCClipper__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_new_DCClipper__SWIG_1(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_new_DCClipper__SWIG_2(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'new_DCClipper'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCClipper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCClipper *arg1 = (wxDCClipper *) 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_wxDCClipper, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCClipper" "', expected argument " "1"" of type '" "wxDCClipper *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCClipper * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCClipper_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCClipper, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCClipper_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_MemoryDC(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxBitmap const &arg1_defvalue = wxNullBitmap ;
@@ -24257,6 +24870,328 @@ SWIGINTERN PyObject *PrinterDC_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) NULL ;
+  wxGraphicsObject *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "renderer", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|O:new_GraphicsObject",kwnames,&obj0)) SWIG_fail;
+  if (obj0) {
+    res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+    if (!SWIG_IsOK(res1)) {
+      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+    }
+    arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  }
+  {
+    result = (wxGraphicsObject *)new wxGraphicsObject(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsObject, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 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_wxGraphicsObject, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsObject *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_IsNull(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  bool 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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_IsNull" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (bool)((wxGraphicsObject const *)arg1)->IsNull();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_GetRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  wxGraphicsRenderer *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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_GetRenderer" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (wxGraphicsRenderer *)((wxGraphicsObject const *)arg1)->GetRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsObject_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsObject, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsObject_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsPen",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsPen *)new wxGraphicsPen();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *arg1 = (wxGraphicsPen *) 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_wxGraphicsPen, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPen" "', expected argument " "1"" of type '" "wxGraphicsPen *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPen * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsPen_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPen, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsPen_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsBrush",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsBrush *)new wxGraphicsBrush();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *arg1 = (wxGraphicsBrush *) 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_wxGraphicsBrush, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsBrush" "', expected argument " "1"" of type '" "wxGraphicsBrush *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsBrush * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsBrush_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsBrush, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsBrush_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsFont",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsFont *)new wxGraphicsFont();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *arg1 = (wxGraphicsFont *) 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_wxGraphicsFont, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsFont" "', expected argument " "1"" of type '" "wxGraphicsFont *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsFont * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsFont_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsFont, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -24283,7 +25218,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *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_wxGraphicsPath, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24294,25 +25255,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(sel
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_MoveToPoint",kwnames,&obj0,&obj1,&obj2)) 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_MoveToPoint" "', 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_MoveToPoint" "', 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_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -24328,7 +25283,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+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 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24339,25 +25342,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_AddLineToPoint",kwnames,&obj0,&obj1,&obj2)) 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_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_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_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -24373,7 +25370,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(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 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    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();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  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 (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  }
+  
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24396,49 +25441,39 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *SWIGUNUSEDPARM
   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 *) "cx1",(char *) "cy1",(char *) "cx2",(char *) "cy2",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_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_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_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_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_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_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(obj6, &val7);
+  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""'");
   } 
@@ -24454,6 +25489,102 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
+  
+  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_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;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "path", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  {
+    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -24498,164 +25629,1689 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM
     result = (arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, 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_AddArc__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;
+  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 *""'"); 
+  }
+  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""'");
+  } 
+  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""'");
+  } 
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__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;
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(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_AddArc'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', 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_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);
+  {
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddRectangle" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 
+  };
+  
+  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 *""'"); 
+  }
+  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;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+  };
+  
+  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 '" "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)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddEllipse" "', 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;
+  }
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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] ;
+  
+  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 *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int res2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "p", NULL 
+  };
+  
+  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 '" "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)->UnGetNativePath(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 
+  };
+  
+  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 '" "GraphicsPath_Transform" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble 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 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (arg1)->GetBox();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 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 '" "GraphicsPath_Contains" "', 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""'");
+  } 
+  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);
+  }
+  {
+    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  int val3 ;
+  int ecode3 = 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 '" "GraphicsPath_Contains" "', 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;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
+  
+  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);
+  }
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  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) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(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 ;
+  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 ;
+  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 (!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 '" "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);
+  }
+  {
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    (arg1)->Invert();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 (!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 *""'"); 
+  }
+  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:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", 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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', 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_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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  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 (!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 '" "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)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "angle", NULL 
+  };
+  
+  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 '" "GraphicsMatrix_Rotate" "', 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_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  {
+    (arg1)->Rotate(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(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_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 '" "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);
+  }
+  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_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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindowDC *arg1 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindow *arg1 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindow * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[2];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
+  --argc;
+  if (argc == 1) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 1) {
+    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "context", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "window", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNativeWindow",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNativeWindow" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNativeWindow(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 *) "x",(char *) "y",(char *) "r",(char *) "startAngle",(char *) "endAngle",(char *) "clockwise", NULL 
+    (char *) "self",(char *) "pen", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddArc",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreatePen",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 '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    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(obj2, &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(obj3, &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(obj4, &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(obj5, &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(obj6, &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 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 
+    (char *) "self",(char *) "brush", 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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreateBrush",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 '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  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);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -24666,114 +27322,75 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(se
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-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 
-  };
-  
-  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 *""'"); 
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) 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_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);
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -24786,215 +27403,208 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    delete arg1;
-    
-    if (PyErr_Occurred()) SWIG_fail;
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
-  PyObject *resultobj = 0;
-  wxWindowDC *arg1 = 0 ;
-  wxGraphicsContext *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  
-  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  if (!argp1) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
   }
-  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
   {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxWindow *arg1 = (wxWindow *) 0 ;
-  wxGraphicsContext *result = 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
+  wxGraphicsMatrix *result = 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 ;
+  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 < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsContext_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxWindow * >(argp1);
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[2];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
-  --argc;
-  if (argc == 1) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
   }
-check_1:
-  
-  if (argc == 1) {
-    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
   }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  void *arg1 = (void *) 0 ;
-  wxGraphicsContext *result = 0 ;
-  int res1 ;
-  PyObject * obj0 = 0 ;
-  char *  kwnames[] = {
-    (char *) "context", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
   }
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -25330,7 +27940,41 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPen *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPen * >(argp2);
+  {
+    (arg1)->SetPen((wxGraphicsPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxPen *arg2 = 0 ;
@@ -25338,19 +27982,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self)
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "pen", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetPen",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPen,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
   }
@@ -25369,7 +28008,68 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetPen",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsPen, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetPen__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetPen__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetPen'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsBrush *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsBrush * >(argp2);
+  {
+    (arg1)->SetBrush((wxGraphicsBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxBrush *arg2 = 0 ;
@@ -25377,19 +28077,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(sel
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "brush", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetBrush",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
   }
@@ -25408,160 +28103,58 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxColour *arg6 = 0 ;
-  wxColour *arg7 = 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 ;
-  wxColour temp6 ;
-  wxColour temp7 ;
-  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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_SetLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_SetLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  {
-    arg6 = &temp6;
-    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
-  }
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetBrush",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsBrush, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetBrush__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetBrush__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetBrush'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxColour *arg7 = 0 ;
-  wxColour *arg8 = 0 ;
+  wxGraphicsFont *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 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  wxColour temp7 ;
-  wxColour temp8 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
-  PyObject * obj7 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColour",(char *) "cColour", NULL 
-  };
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_SetRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
-  {
-    arg8 = &temp8;
-    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsFont * >(argp2);
   {
-    (arg1)->SetRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
+    (arg1)->SetFont((wxGraphicsFont const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25571,27 +28164,25 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
   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 
-  };
+  wxColour temp3 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetFont",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  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_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxFont,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
@@ -25599,8 +28190,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
   arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (swig_obj[2]) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(swig_obj[2], &arg3)) SWIG_fail;
+    }
+  }
   {
-    (arg1)->SetFont((wxFont const &)*arg2);
+    (arg1)->SetFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25610,36 +28207,29 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetTextColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxColour *arg2 = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  wxColour temp2 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "col", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTextColour",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_SetTextColour" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetFont",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsFont, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetFont__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetTextColour((wxColour const &)*arg2);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 2) && (argc <= 3)) {
+    return _wrap_GraphicsContext_SetFont__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetFont'");
   return NULL;
 }
 
@@ -26171,54 +28761,367 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawIcon(PyObject *SWIGUNUSEDPARM(sel
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 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 *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  {
+    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  {
+    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  PyObject *arg3 = (PyObject *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) 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_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg2 = obj1;
+  arg3 = obj2;
+  {
+    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  int arg4 = (int) wxWINDING_RULE ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) 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_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  if (obj2) {
+    ecode4 = SWIG_AsVal_int(obj2, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
-  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26228,13 +29131,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26245,43 +29149,51 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(s
   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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26291,137 +29203,283 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_ShouldOffset(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "points", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ShouldOffset" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    result = (bool)((wxGraphicsContext const *)arg1)->ShouldOffset();
+    if (PyErr_Occurred()) SWIG_fail;
   }
   {
-    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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_wxGraphicsRenderer, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsRenderer" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  {
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_GetDefaultRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"GraphicsRenderer_GetDefaultRenderer",0,0,0)) SWIG_fail;
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsRenderer *)wxGraphicsRenderer::GetDefaultRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindowDC *arg2 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindowDC * >(argp2);
+  {
+    result = (wxGraphicsContext *)(arg1)->CreateContext((wxWindowDC const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindow *arg2 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindow *""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindow * >(argp2);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsContext *)(arg1)->CreateContext(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsRenderer_CreateContext",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsRenderer_CreateContext'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  PyObject *arg2 = (PyObject *) 0 ;
-  PyObject *arg3 = (PyObject *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+    (char *) "self",(char *) "context", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeContext",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  arg2 = obj1;
-  arg3 = obj2;
   {
-    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeContext(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
-  int arg4 = (int) wxWINDING_RULE ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val4 ;
-  int ecode4 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+    (char *) "self",(char *) "window", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeWindow",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  if (obj2) {
-    ecode4 = SWIG_AsVal_int(obj2, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "2"" of type '" "void *""'"); 
   }
   {
-    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeWindow(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  {
-    if (arg3) delete [] arg3;
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxGraphicsPath *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_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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 ;
+  wxGraphicsMatrix *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26432,59 +29490,170 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPAR
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsRenderer_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreatePen",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateBrush",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26495,60 +29664,75 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsRenderer_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
+  }
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26561,62 +29745,124 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUN
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsRenderer_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsRenderer_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
+  }
+  {
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsRenderer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsRenderer, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
@@ -35004,6 +38250,22 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"DC__DrawPolygonList", (PyCFunction) _wrap_DC__DrawPolygonList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC__DrawTextList", (PyCFunction) _wrap_DC__DrawTextList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC_swigregister", DC_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DCTextColourChanger", (PyCFunction) _wrap_new_DCTextColourChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCTextColourChanger", (PyCFunction)_wrap_delete_DCTextColourChanger, METH_O, NULL},
+        { (char *)"DCTextColourChanger_swigregister", DCTextColourChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCTextColourChanger_swiginit", DCTextColourChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCPenChanger", (PyCFunction) _wrap_new_DCPenChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCPenChanger", (PyCFunction)_wrap_delete_DCPenChanger, METH_O, NULL},
+        { (char *)"DCPenChanger_swigregister", DCPenChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCPenChanger_swiginit", DCPenChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCBrushChanger", (PyCFunction) _wrap_new_DCBrushChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCBrushChanger", (PyCFunction)_wrap_delete_DCBrushChanger, METH_O, NULL},
+        { (char *)"DCBrushChanger_swigregister", DCBrushChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCBrushChanger_swiginit", DCBrushChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCClipper", _wrap_new_DCClipper, METH_VARARGS, NULL},
+        { (char *)"delete_DCClipper", (PyCFunction)_wrap_delete_DCClipper, METH_O, NULL},
+        { (char *)"DCClipper_swigregister", DCClipper_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCClipper_swiginit", DCClipper_swiginit, METH_VARARGS, NULL},
         { (char *)"new_MemoryDC", (PyCFunction) _wrap_new_MemoryDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"new_MemoryDCFromDC", (PyCFunction) _wrap_new_MemoryDCFromDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"MemoryDC_SelectObject", (PyCFunction) _wrap_MemoryDC_SelectObject, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35055,22 +38317,71 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_PrinterDC", (PyCFunction) _wrap_new_PrinterDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"PrinterDC_swigregister", PrinterDC_swigregister, METH_VARARGS, NULL},
         { (char *)"PrinterDC_swiginit", PrinterDC_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsObject", (PyCFunction) _wrap_new_GraphicsObject, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_GraphicsObject", (PyCFunction)_wrap_delete_GraphicsObject, METH_O, NULL},
+        { (char *)"GraphicsObject_IsNull", (PyCFunction)_wrap_GraphicsObject_IsNull, METH_O, NULL},
+        { (char *)"GraphicsObject_GetRenderer", (PyCFunction)_wrap_GraphicsObject_GetRenderer, METH_O, NULL},
+        { (char *)"GraphicsObject_swigregister", GraphicsObject_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsObject_swiginit", GraphicsObject_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsPen", (PyCFunction)_wrap_new_GraphicsPen, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsPen", (PyCFunction)_wrap_delete_GraphicsPen, METH_O, NULL},
+        { (char *)"GraphicsPen_swigregister", GraphicsPen_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsPen_swiginit", GraphicsPen_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsBrush", (PyCFunction)_wrap_new_GraphicsBrush, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsBrush", (PyCFunction)_wrap_delete_GraphicsBrush, METH_O, NULL},
+        { (char *)"GraphicsBrush_swigregister", GraphicsBrush_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsBrush_swiginit", GraphicsBrush_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsFont", (PyCFunction)_wrap_new_GraphicsFont, METH_NOARGS, NULL},
+        { (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_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_MoveToPoint", (PyCFunction) _wrap_GraphicsPath_MoveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddLineToPoint", (PyCFunction) _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS | METH_KEYWORDS, 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},
+        { (char *)"GraphicsPath_AddPath", (PyCFunction) _wrap_GraphicsPath_AddPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_CloseSubpath", (PyCFunction)_wrap_GraphicsPath_CloseSubpath, METH_O, NULL},
         { (char *)"GraphicsPath_GetCurrentPoint", (PyCFunction)_wrap_GraphicsPath_GetCurrentPoint, METH_O, NULL},
-        { (char *)"GraphicsPath_AddArc", (PyCFunction) _wrap_GraphicsPath_AddArc, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddArc", _wrap_GraphicsPath_AddArc, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddQuadCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddQuadCurveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddRectangle", (PyCFunction) _wrap_GraphicsPath_AddRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddCircle", (PyCFunction) _wrap_GraphicsPath_AddCircle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddArcToPoint", (PyCFunction) _wrap_GraphicsPath_AddArcToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddEllipse", (PyCFunction) _wrap_GraphicsPath_AddEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddRoundedRectangle", (PyCFunction) _wrap_GraphicsPath_AddRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_GetNativePath", (PyCFunction)_wrap_GraphicsPath_GetNativePath, METH_O, NULL},
+        { (char *)"GraphicsPath_UnGetNativePath", (PyCFunction) _wrap_GraphicsPath_UnGetNativePath, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_Transform", (PyCFunction) _wrap_GraphicsPath_Transform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (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},
+        { (char *)"GraphicsContext_CreateFromNativeWindow", (PyCFunction) _wrap_GraphicsContext_CreateFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_CreatePath", (PyCFunction)_wrap_GraphicsContext_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsContext_CreatePen", (PyCFunction) _wrap_GraphicsContext_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateBrush", (PyCFunction) _wrap_GraphicsContext_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateFont", (PyCFunction) _wrap_GraphicsContext_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateMatrix", (PyCFunction) _wrap_GraphicsContext_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_PushState", (PyCFunction)_wrap_GraphicsContext_PushState, METH_O, NULL},
         { (char *)"GraphicsContext_PopState", (PyCFunction)_wrap_GraphicsContext_PopState, METH_O, NULL},
         { (char *)"GraphicsContext_ClipRegion", (PyCFunction) _wrap_GraphicsContext_ClipRegion, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35080,12 +38391,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_SetPen", (PyCFunction) _wrap_GraphicsContext_SetPen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetBrush", (PyCFunction) _wrap_GraphicsContext_SetBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetFont", (PyCFunction) _wrap_GraphicsContext_SetFont, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetTextColour", (PyCFunction) _wrap_GraphicsContext_SetTextColour, METH_VARARGS | METH_KEYWORDS, 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},
         { (char *)"GraphicsContext_StrokePath", (PyCFunction) _wrap_GraphicsContext_StrokePath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_FillPath", (PyCFunction) _wrap_GraphicsContext_FillPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawPath", (PyCFunction) _wrap_GraphicsContext_DrawPath, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35103,7 +38411,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_DrawRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawEllipse", (PyCFunction) _wrap_GraphicsContext_DrawEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawRoundedRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ShouldOffset", (PyCFunction)_wrap_GraphicsContext_ShouldOffset, METH_O, NULL},
         { (char *)"GraphicsContext_swigregister", GraphicsContext_swigregister, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsRenderer", (PyCFunction)_wrap_delete_GraphicsRenderer, METH_O, NULL},
+        { (char *)"GraphicsRenderer_GetDefaultRenderer", (PyCFunction)_wrap_GraphicsRenderer_GetDefaultRenderer, METH_NOARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContext", _wrap_GraphicsRenderer_CreateContext, METH_VARARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeContext", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeContext, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeWindow", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePath", (PyCFunction)_wrap_GraphicsRenderer_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsRenderer_CreateMatrix", (PyCFunction) _wrap_GraphicsRenderer_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePen", (PyCFunction) _wrap_GraphicsRenderer_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateFont", (PyCFunction) _wrap_GraphicsRenderer_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_swigregister", GraphicsRenderer_swigregister, METH_VARARGS, NULL},
         { (char *)"new_GCDC", (PyCFunction) _wrap_new_GCDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_GCDC", (PyCFunction)_wrap_delete_GCDC, METH_O, NULL},
         { (char *)"GCDC_GetGraphicsContext", (PyCFunction)_wrap_GCDC_GetGraphicsContext, METH_O, NULL},
@@ -35334,6 +38656,24 @@ static void *_p_wxPaintDCTo_p_wxWindowDC(void *x) {
 static void *_p_wxPyLocaleTo_p_wxLocale(void *x) {
     return (void *)((wxLocale *)  ((wxPyLocale *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPen *) x));
+}
+static void *_p_wxGraphicsBrushTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsMatrixTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsMatrix *) x));
+}
+static void *_p_wxGraphicsFontTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsFont *) x));
+}
+static void *_p_wxGraphicsContextTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsContext *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPath *) x));
+}
 static void *_p_wxIconTo_p_wxGDIObject(void *x) {
     return (void *)((wxGDIObject *)  ((wxIcon *) x));
 }
@@ -35490,6 +38830,9 @@ static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
 static void *_p_wxControlTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPen *) x));
+}
 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
 }
@@ -35514,6 +38857,12 @@ static void *_p_wxWindowDCTo_p_wxObject(void *x) {
 static void *_p_wxGDIObjectTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxGDIObject *) x));
 }
+static void *_p_wxGraphicsObjectTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsObject *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPath *) x));
+}
 static void *_p_wxEffectsTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxEffects *) x));
 }
@@ -35526,6 +38875,9 @@ static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
 static void *_p_wxPostScriptDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxPostScriptDC *) x));
 }
+static void *_p_wxGraphicsContextTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsContext *) x));
+}
 static void *_p_wxShowEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
 }
@@ -35631,6 +38983,12 @@ static void *_p_wxImageTo_p_wxObject(void *x) {
 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
 }
+static void *_p_wxGraphicsBrushTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsRendererTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsRenderer *) x));
+}
 static void *_p_wxPaletteTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxGDIObject *) ((wxPalette *) x));
 }
@@ -35652,6 +39010,9 @@ static void *_p_wxEncodingConverterTo_p_wxObject(void *x) {
 static void *_p_wxMirrorDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxMirrorDC *) x));
 }
+static void *_p_wxGraphicsFontTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsFont *) x));
+}
 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
 }
@@ -35682,6 +39043,9 @@ static void *_p_wxBitmapTo_p_wxObject(void *x) {
 static void *_p_wxMaskTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxMask *) x));
 }
+static void *_p_wxGraphicsMatrixTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsMatrix *) x));
+}
 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
 }
@@ -35775,7 +39139,11 @@ static swig_type_info _swigt__p_wxColour = {"_p_wxColour", "wxColour *", 0, 0, (
 static swig_type_info _swigt__p_wxColourDatabase = {"_p_wxColourDatabase", "wxColourDatabase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxCursor = {"_p_wxCursor", "wxCursor *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCBrushChanger = {"_p_wxDCBrushChanger", "wxDCBrushChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCClipper = {"_p_wxDCClipper", "wxDCClipper *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDCOverlay = {"_p_wxDCOverlay", "wxDCOverlay *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCPenChanger = {"_p_wxDCPenChanger", "wxDCPenChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCTextColourChanger = {"_p_wxDCTextColourChanger", "wxDCTextColourChanger *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDash = {"_p_wxDash", "wxDash *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEffects = {"_p_wxEffects", "wxEffects *", 0, 0, (void*)0, 0};
@@ -35786,8 +39154,14 @@ static swig_type_info _swigt__p_wxFontMapper = {"_p_wxFontMapper", "wxFontMapper
 static swig_type_info _swigt__p_wxGCDC = {"_p_wxGCDC", "wxGCDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObjListBase = {"_p_wxGDIObjListBase", "wxGDIObjListBase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObject = {"_p_wxGDIObject", "wxGDIObject *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsBrush = {"_p_wxGraphicsBrush", "wxGraphicsBrush *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsContext = {"_p_wxGraphicsContext", "wxGraphicsContext *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsFont = {"_p_wxGraphicsFont", "wxGraphicsFont *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsMatrix = {"_p_wxGraphicsMatrix", "wxGraphicsMatrix *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsObject = {"_p_wxGraphicsObject", "wxGraphicsObject *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsPath = {"_p_wxGraphicsPath", "wxGraphicsPath *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsPen = {"_p_wxGraphicsPen", "wxGraphicsPen *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsRenderer = {"_p_wxGraphicsRenderer", "wxGraphicsRenderer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxHeaderButtonParams = {"_p_wxHeaderButtonParams", "wxHeaderButtonParams *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIcon = {"_p_wxIcon", "wxIcon *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIconBundle = {"_p_wxIconBundle", "wxIconBundle *", 0, 0, (void*)0, 0};
@@ -35845,13 +39219,13 @@ static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0,
 static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0, 0};
@@ -35891,6 +39265,7 @@ static swig_type_info _swigt__p_wxPenList = {"_p_wxPenList", "wxPenList *", 0, 0
 static swig_type_info _swigt__p_wxPixelDataBase = {"_p_wxPixelDataBase", "wxPixelDataBase *", 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_wxPoint2D = {"_p_wxPoint2D", "wxPoint2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPoint2DDouble = {"_p_wxPoint2DDouble", "wxPoint2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPostScriptDC = {"_p_wxPostScriptDC", "wxPostScriptDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrintData = {"_p_wxPrintData", "wxPrintData *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrinterDC = {"_p_wxPrinterDC", "wxPrinterDC *", 0, 0, (void*)0, 0};
@@ -35898,6 +39273,7 @@ static swig_type_info _swigt__p_wxPseudoDC = {"_p_wxPseudoDC", "wxPseudoDC *", 0
 static swig_type_info _swigt__p_wxPyFontEnumerator = {"_p_wxPyFontEnumerator", "wxPyFontEnumerator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyLocale = {"_p_wxPyLocale", "wxPyLocale *", 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_wxRect2DDouble = {"_p_wxRect2DDouble", "wxRect2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegionIterator = {"_p_wxRegionIterator", "wxRegionIterator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRendererNative = {"_p_wxRendererNative", "wxRendererNative *", 0, 0, (void*)0, 0};
@@ -35948,7 +39324,11 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxControlWithItems,
   &_swigt__p_wxCursor,
   &_swigt__p_wxDC,
+  &_swigt__p_wxDCBrushChanger,
+  &_swigt__p_wxDCClipper,
   &_swigt__p_wxDCOverlay,
+  &_swigt__p_wxDCPenChanger,
+  &_swigt__p_wxDCTextColourChanger,
   &_swigt__p_wxDash,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDisplayChangedEvent,
@@ -35971,8 +39351,14 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxGDIObjListBase,
   &_swigt__p_wxGDIObject,
   &_swigt__p_wxGIFHandler,
+  &_swigt__p_wxGraphicsBrush,
   &_swigt__p_wxGraphicsContext,
+  &_swigt__p_wxGraphicsFont,
+  &_swigt__p_wxGraphicsMatrix,
+  &_swigt__p_wxGraphicsObject,
   &_swigt__p_wxGraphicsPath,
+  &_swigt__p_wxGraphicsPen,
+  &_swigt__p_wxGraphicsRenderer,
   &_swigt__p_wxGridBagSizer,
   &_swigt__p_wxGridSizer,
   &_swigt__p_wxHeaderButtonParams,
@@ -36028,6 +39414,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPixelDataBase,
   &_swigt__p_wxPoint,
   &_swigt__p_wxPoint2D,
+  &_swigt__p_wxPoint2DDouble,
   &_swigt__p_wxPostScriptDC,
   &_swigt__p_wxPrintData,
   &_swigt__p_wxPrinterDC,
@@ -36042,6 +39429,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyValidator,
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2DDouble,
   &_swigt__p_wxRegion,
   &_swigt__p_wxRegionIterator,
   &_swigt__p_wxRendererNative,
@@ -36095,7 +39483,11 @@ static swig_cast_info _swigc__p_wxColour[] = {  {&_swigt__p_wxColour, 0, 0, 0},{
 static swig_cast_info _swigc__p_wxColourDatabase[] = {  {&_swigt__p_wxColourDatabase, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCursor[] = {  {&_swigt__p_wxCursor, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxDC, 0, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxDC, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCBrushChanger[] = {  {&_swigt__p_wxDCBrushChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCClipper[] = {  {&_swigt__p_wxDCClipper, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDCOverlay[] = {  {&_swigt__p_wxDCOverlay, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCPenChanger[] = {  {&_swigt__p_wxDCPenChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCTextColourChanger[] = {  {&_swigt__p_wxDCTextColourChanger, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDash[] = {  {&_swigt__p_wxDash, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEffects[] = {  {&_swigt__p_wxEffects, 0, 0, 0},{0, 0, 0, 0}};
@@ -36106,8 +39498,14 @@ static swig_cast_info _swigc__p_wxFontMapper[] = {  {&_swigt__p_wxFontMapper, 0,
 static swig_cast_info _swigc__p_wxGCDC[] = {  {&_swigt__p_wxGCDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObjListBase[] = {  {&_swigt__p_wxGDIObjListBase, 0, 0, 0},  {&_swigt__p_wxBrushList, _p_wxBrushListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxFontList, _p_wxFontListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxPenList, _p_wxPenListTo_p_wxGDIObjListBase, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObject[] = {  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxGDIObject, 0, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxGDIObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsBrush[] = {  {&_swigt__p_wxGraphicsBrush, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsContext[] = {  {&_swigt__p_wxGraphicsContext, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsFont[] = {  {&_swigt__p_wxGraphicsFont, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsMatrix[] = {  {&_swigt__p_wxGraphicsMatrix, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsObject[] = {  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsObject, 0, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxGraphicsObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsPath[] = {  {&_swigt__p_wxGraphicsPath, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsPen[] = {  {&_swigt__p_wxGraphicsPen, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsRenderer[] = {  {&_swigt__p_wxGraphicsRenderer, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxHeaderButtonParams[] = {  {&_swigt__p_wxHeaderButtonParams, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIcon[] = {  {&_swigt__p_wxIcon, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIconBundle[] = {  {&_swigt__p_wxIconBundle, 0, 0, 0},{0, 0, 0, 0}};
@@ -36164,13 +39562,13 @@ static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent,
 static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEvtHandler[] = {{&_swigt__p_wxEvtHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
@@ -36201,7 +39599,7 @@ static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusE
 static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsObject, _p_wxGraphicsObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsRenderer, _p_wxGraphicsRendererTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxOverlay[] = {  {&_swigt__p_wxOverlay, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPaintDC[] = {  {&_swigt__p_wxPaintDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPalette[] = {  {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
@@ -36211,6 +39609,7 @@ static swig_cast_info _swigc__p_wxPenList[] = {  {&_swigt__p_wxPenList, 0, 0, 0}
 static swig_cast_info _swigc__p_wxPixelDataBase[] = {  {&_swigt__p_wxPixelDataBase, 0, 0, 0},  {&_swigt__p_wxNativePixelData, _p_wxNativePixelDataTo_p_wxPixelDataBase, 0, 0},  {&_swigt__p_wxAlphaPixelData, _p_wxAlphaPixelDataTo_p_wxPixelDataBase, 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_wxPoint2D[] = {  {&_swigt__p_wxPoint2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPoint2DDouble[] = {  {&_swigt__p_wxPoint2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPostScriptDC[] = {  {&_swigt__p_wxPostScriptDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrintData[] = {  {&_swigt__p_wxPrintData, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrinterDC[] = {  {&_swigt__p_wxPrinterDC, 0, 0, 0},{0, 0, 0, 0}};
@@ -36218,6 +39617,7 @@ static swig_cast_info _swigc__p_wxPseudoDC[] = {  {&_swigt__p_wxPseudoDC, 0, 0,
 static swig_cast_info _swigc__p_wxPyFontEnumerator[] = {  {&_swigt__p_wxPyFontEnumerator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyLocale[] = {  {&_swigt__p_wxPyLocale, 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_wxRect2DDouble[] = {  {&_swigt__p_wxRect2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegionIterator[] = {  {&_swigt__p_wxRegionIterator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRendererNative[] = {  {&_swigt__p_wxRendererNative, 0, 0, 0},{0, 0, 0, 0}};
@@ -36268,7 +39668,11 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxControlWithItems,
   _swigc__p_wxCursor,
   _swigc__p_wxDC,
+  _swigc__p_wxDCBrushChanger,
+  _swigc__p_wxDCClipper,
   _swigc__p_wxDCOverlay,
+  _swigc__p_wxDCPenChanger,
+  _swigc__p_wxDCTextColourChanger,
   _swigc__p_wxDash,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDisplayChangedEvent,
@@ -36291,8 +39695,14 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxGDIObjListBase,
   _swigc__p_wxGDIObject,
   _swigc__p_wxGIFHandler,
+  _swigc__p_wxGraphicsBrush,
   _swigc__p_wxGraphicsContext,
+  _swigc__p_wxGraphicsFont,
+  _swigc__p_wxGraphicsMatrix,
+  _swigc__p_wxGraphicsObject,
   _swigc__p_wxGraphicsPath,
+  _swigc__p_wxGraphicsPen,
+  _swigc__p_wxGraphicsRenderer,
   _swigc__p_wxGridBagSizer,
   _swigc__p_wxGridSizer,
   _swigc__p_wxHeaderButtonParams,
@@ -36348,6 +39758,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPixelDataBase,
   _swigc__p_wxPoint,
   _swigc__p_wxPoint2D,
+  _swigc__p_wxPoint2DDouble,
   _swigc__p_wxPostScriptDC,
   _swigc__p_wxPrintData,
   _swigc__p_wxPrinterDC,
@@ -36362,6 +39773,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyValidator,
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2DDouble,
   _swigc__p_wxRegion,
   _swigc__p_wxRegionIterator,
   _swigc__p_wxRendererNative,
@@ -37275,6 +40687,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "PLATFORM_MAC",SWIG_From_int(static_cast< int >(wxPLATFORM_MAC)));
   SWIG_Python_SetConstant(d, "BUFFER_VIRTUAL_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_VIRTUAL_AREA)));
   SWIG_Python_SetConstant(d, "BUFFER_CLIENT_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_CLIENT_AREA)));
+  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
+  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_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)));
@@ -37317,7 +40733,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "StockGDI_PEN_TRANSPARENT",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "StockGDI_PEN_WHITE",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_WHITE)));
   SWIG_Python_SetConstant(d, "StockGDI_ITEMCOUNT",SWIG_From_int(static_cast< int >(wxStockGDI::ITEMCOUNT)));
-  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
   SWIG_addvarlink(SWIG_globals(),(char*)"NullBitmap",NullBitmap_get, NullBitmap_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullIcon",NullIcon_get, NullIcon_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullCursor",NullCursor_get, NullCursor_set);
index f55641375080d0edcb0cf9b07358cefe8c3de9f6..c4fbfef8ddefb6d3d41e2c5788a48414947277bc 100644 (file)
@@ -397,6 +397,10 @@ class TopLevelWindow(_core.Window):
         """GetTitle(self) -> String"""
         return _windows_.TopLevelWindow_GetTitle(*args, **kwargs)
 
+    def EnableCloseButton(*args, **kwargs):
+        """EnableCloseButton(self, bool enable) -> bool"""
+        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
+
     def SetShape(*args, **kwargs):
         """SetShape(self, Region region) -> bool"""
         return _windows_.TopLevelWindow_SetShape(*args, **kwargs)
@@ -426,10 +430,6 @@ class TopLevelWindow(_core.Window):
         return _windows_.TopLevelWindow_CenterOnScreen(*args, **kwargs)
 
     CentreOnScreen = CenterOnScreen 
-    def EnableCloseButton(*args, **kwargs):
-        """EnableCloseButton(self, bool enable=True) -> bool"""
-        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
-
     def GetDefaultItem(*args, **kwargs):
         """
         GetDefaultItem(self) -> Window
@@ -4403,6 +4403,54 @@ class Printout(_core.Object):
         """SetDC(self, DC dc)"""
         return _windows_.Printout_SetDC(*args, **kwargs)
 
+    def FitThisSizeToPaper(*args, **kwargs):
+        """FitThisSizeToPaper(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPaper(*args, **kwargs)
+
+    def FitThisSizeToPage(*args, **kwargs):
+        """FitThisSizeToPage(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPage(*args, **kwargs)
+
+    def FitThisSizeToPageMargins(*args, **kwargs):
+        """FitThisSizeToPageMargins(self, Size imageSize, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_FitThisSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToPaper(*args, **kwargs):
+        """MapScreenSizeToPaper(self)"""
+        return _windows_.Printout_MapScreenSizeToPaper(*args, **kwargs)
+
+    def MapScreenSizeToPage(*args, **kwargs):
+        """MapScreenSizeToPage(self)"""
+        return _windows_.Printout_MapScreenSizeToPage(*args, **kwargs)
+
+    def MapScreenSizeToPageMargins(*args, **kwargs):
+        """MapScreenSizeToPageMargins(self, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_MapScreenSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToDevice(*args, **kwargs):
+        """MapScreenSizeToDevice(self)"""
+        return _windows_.Printout_MapScreenSizeToDevice(*args, **kwargs)
+
+    def GetLogicalPaperRect(*args, **kwargs):
+        """GetLogicalPaperRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPaperRect(*args, **kwargs)
+
+    def GetLogicalPageRect(*args, **kwargs):
+        """GetLogicalPageRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPageRect(*args, **kwargs)
+
+    def GetLogicalPageMarginsRect(*args, **kwargs):
+        """GetLogicalPageMarginsRect(self, PageSetupDialogData pageSetupData) -> Rect"""
+        return _windows_.Printout_GetLogicalPageMarginsRect(*args, **kwargs)
+
+    def SetLogicalOrigin(*args, **kwargs):
+        """SetLogicalOrigin(self, int x, int y)"""
+        return _windows_.Printout_SetLogicalOrigin(*args, **kwargs)
+
+    def OffsetLogicalOrigin(*args, **kwargs):
+        """OffsetLogicalOrigin(self, int xoff, int yoff)"""
+        return _windows_.Printout_OffsetLogicalOrigin(*args, **kwargs)
+
     def SetPageSizePixels(*args, **kwargs):
         """SetPageSizePixels(self, int w, int h)"""
         return _windows_.Printout_SetPageSizePixels(*args, **kwargs)
@@ -4435,6 +4483,14 @@ class Printout(_core.Object):
         """GetPPIPrinter() -> (x,y)"""
         return _windows_.Printout_GetPPIPrinter(*args, **kwargs)
 
+    def SetPaperRectPixels(*args, **kwargs):
+        """SetPaperRectPixels(self, Rect paperRectPixels)"""
+        return _windows_.Printout_SetPaperRectPixels(*args, **kwargs)
+
+    def GetPaperRectPixels(*args, **kwargs):
+        """GetPaperRectPixels(self) -> Rect"""
+        return _windows_.Printout_GetPaperRectPixels(*args, **kwargs)
+
     def IsPreview(*args, **kwargs):
         """IsPreview(self) -> bool"""
         return _windows_.Printout_IsPreview(*args, **kwargs)
index 7d2f39c2c5d8cbc68876c1058acc2ef9a26fbf00..997ed18fe75a0e4fa05f1188001cb8a9dcfa6746 100644 (file)
@@ -2822,7 +2822,6 @@ SWIG_AsVal_double (PyObject *obj, double* val)
  static const wxString wxPyToolBarNameStr(wxToolBarNameStr); 
 SWIGINTERN void wxTopLevelWindow_MacSetMetalAppearance(wxTopLevelWindow *self,bool on){ /*wxPyRaiseNotImplemented();*/ }
 SWIGINTERN bool wxTopLevelWindow_MacGetMetalAppearance(wxTopLevelWindow const *self){ /*wxPyRaiseNotImplemented();*/ return false; }
-SWIGINTERN bool wxTopLevelWindow_EnableCloseButton(wxTopLevelWindow *self,bool enable=true){ return false; }
 
 
 SWIGINTERN wxRect wxStatusBar_GetFieldRect(wxStatusBar *self,int i){
@@ -5761,6 +5760,47 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
+  bool arg2 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "enable", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
+  ecode2 = SWIG_AsVal_bool(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
+  } 
+  arg2 = static_cast< bool >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EnableCloseButton(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_TopLevelWindow_SetShape(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -5983,49 +6023,6 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
-  bool arg2 = (bool) true ;
-  bool result;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  bool val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "enable", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
-  }
-  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_bool(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
-    } 
-    arg2 = static_cast< bool >(val2);
-  }
-  {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)wxTopLevelWindow_EnableCloseButton(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
 SWIGINTERN PyObject *_wrap_TopLevelWindow_GetDefaultItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -27918,6 +27915,440 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPaper",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPaper((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPage",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPage((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  wxPageSetupDialogData *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_FitThisSizeToPageMargins",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp3) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg3 = reinterpret_cast< wxPageSetupDialogData * >(argp3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPageMargins((wxSize const &)*arg2,(wxPageSetupDialogData const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPaper();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPage();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *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 *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_MapScreenSizeToPageMargins",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPageMargins((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToDevice(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToDevice" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToDevice();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPaperRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPaperRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPaperRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageMarginsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *arg2 = 0 ;
+  wxRect result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_GetLogicalPageMarginsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageMarginsRect((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_SetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_SetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_OffsetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xoff",(char *) "yoff", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_OffsetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->OffsetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_SetPageSizePixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -28294,6 +28725,70 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_SetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "paperRectPixels", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_SetPaperRectPixels",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetPaperRectPixels((wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetPaperRectPixels();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_IsPreview(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -30983,13 +31478,13 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"TopLevelWindow_IsFullScreen", (PyCFunction)_wrap_TopLevelWindow_IsFullScreen, METH_O, NULL},
         { (char *)"TopLevelWindow_SetTitle", (PyCFunction) _wrap_TopLevelWindow_SetTitle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetTitle", (PyCFunction)_wrap_TopLevelWindow_GetTitle, METH_O, NULL},
+        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetShape", (PyCFunction) _wrap_TopLevelWindow_SetShape, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_RequestUserAttention", (PyCFunction) _wrap_TopLevelWindow_RequestUserAttention, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_IsActive", (PyCFunction)_wrap_TopLevelWindow_IsActive, METH_O, NULL},
         { (char *)"TopLevelWindow_MacSetMetalAppearance", (PyCFunction) _wrap_TopLevelWindow_MacSetMetalAppearance, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_MacGetMetalAppearance", (PyCFunction)_wrap_TopLevelWindow_MacGetMetalAppearance, METH_O, NULL},
         { (char *)"TopLevelWindow_CenterOnScreen", (PyCFunction) _wrap_TopLevelWindow_CenterOnScreen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetDefaultItem", (PyCFunction)_wrap_TopLevelWindow_GetDefaultItem, METH_O, NULL},
         { (char *)"TopLevelWindow_SetDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetTmpDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetTmpDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31601,6 +32096,18 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetTitle", (PyCFunction)_wrap_Printout_GetTitle, METH_O, NULL},
         { (char *)"Printout_GetDC", (PyCFunction)_wrap_Printout_GetDC, METH_O, NULL},
         { (char *)"Printout_SetDC", (PyCFunction) _wrap_Printout_SetDC, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPaper", (PyCFunction) _wrap_Printout_FitThisSizeToPaper, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPage", (PyCFunction) _wrap_Printout_FitThisSizeToPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPageMargins", (PyCFunction) _wrap_Printout_FitThisSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToPaper", (PyCFunction)_wrap_Printout_MapScreenSizeToPaper, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPage", (PyCFunction)_wrap_Printout_MapScreenSizeToPage, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPageMargins", (PyCFunction) _wrap_Printout_MapScreenSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToDevice", (PyCFunction)_wrap_Printout_MapScreenSizeToDevice, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPaperRect", (PyCFunction)_wrap_Printout_GetLogicalPaperRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageRect", (PyCFunction)_wrap_Printout_GetLogicalPageRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageMarginsRect", (PyCFunction) _wrap_Printout_GetLogicalPageMarginsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_SetLogicalOrigin", (PyCFunction) _wrap_Printout_SetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_OffsetLogicalOrigin", (PyCFunction) _wrap_Printout_OffsetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_SetPageSizePixels", (PyCFunction) _wrap_Printout_SetPageSizePixels, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPageSizePixels", (PyCFunction)_wrap_Printout_GetPageSizePixels, METH_O, NULL},
         { (char *)"Printout_SetPageSizeMM", (PyCFunction) _wrap_Printout_SetPageSizeMM, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31609,6 +32116,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetPPIScreen", (PyCFunction)_wrap_Printout_GetPPIScreen, METH_O, NULL},
         { (char *)"Printout_SetPPIPrinter", (PyCFunction) _wrap_Printout_SetPPIPrinter, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPPIPrinter", (PyCFunction)_wrap_Printout_GetPPIPrinter, METH_O, NULL},
+        { (char *)"Printout_SetPaperRectPixels", (PyCFunction) _wrap_Printout_SetPaperRectPixels, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_GetPaperRectPixels", (PyCFunction)_wrap_Printout_GetPaperRectPixels, METH_O, NULL},
         { (char *)"Printout_IsPreview", (PyCFunction)_wrap_Printout_IsPreview, METH_O, NULL},
         { (char *)"Printout_SetIsPreview", (PyCFunction) _wrap_Printout_SetIsPreview, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_OnBeginDocument", (PyCFunction) _wrap_Printout_OnBeginDocument, METH_VARARGS | METH_KEYWORDS, NULL},
index 54e6c6d6ef7587977fe31cb4c25c3de039eb3d81..592182271ca1f14c3293ffc0192aa5d8e855a244 100644 (file)
@@ -166,9 +166,10 @@ AUI_MGR_ALLOW_FLOATING = _aui.AUI_MGR_ALLOW_FLOATING
 AUI_MGR_ALLOW_ACTIVE_PANE = _aui.AUI_MGR_ALLOW_ACTIVE_PANE
 AUI_MGR_TRANSPARENT_DRAG = _aui.AUI_MGR_TRANSPARENT_DRAG
 AUI_MGR_TRANSPARENT_HINT = _aui.AUI_MGR_TRANSPARENT_HINT
-AUI_MGR_TRANSPARENT_HINT_FADE = _aui.AUI_MGR_TRANSPARENT_HINT_FADE
-AUI_MGR_DISABLE_VENETIAN_BLINDS = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS
-AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE
+AUI_MGR_VENETIAN_BLINDS_HINT = _aui.AUI_MGR_VENETIAN_BLINDS_HINT
+AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT
+AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE
+AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE
 AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT
 AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE
 AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE
index cd84a1d6ffc7fc555a9650035cd48211eb62d8e1..a46115a997c76115af473c89123f3d44e161bdfe 100644 (file)
@@ -16262,9 +16262,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "AUI_MGR_ALLOW_ACTIVE_PANE",SWIG_From_int(static_cast< int >(wxAUI_MGR_ALLOW_ACTIVE_PANE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_DRAG",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_DRAG)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT_FADE)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_VENETIAN_BLINDS_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_VENETIAN_BLINDS_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_RECTANGLE_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_RECTANGLE_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT)));
   SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE)));
   SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE)));
index e5efed0aea44bc8473db180e6a35edbd6ea779b6..fd57a8316dc5bce650f7f0e2741954b6f6a4a472 100644 (file)
@@ -107,7 +107,6 @@ TEXT_ATTR_CHARACTER_STYLE_NAME = _richtext.TEXT_ATTR_CHARACTER_STYLE_NAME
 TEXT_ATTR_PARAGRAPH_STYLE_NAME = _richtext.TEXT_ATTR_PARAGRAPH_STYLE_NAME
 TEXT_ATTR_BULLET_STYLE = _richtext.TEXT_ATTR_BULLET_STYLE
 TEXT_ATTR_BULLET_NUMBER = _richtext.TEXT_ATTR_BULLET_NUMBER
-TEXT_ATTR_BULLET_SYMBOL = _richtext.TEXT_ATTR_BULLET_SYMBOL
 TEXT_ATTR_BULLET_STYLE_NONE = _richtext.TEXT_ATTR_BULLET_STYLE_NONE
 TEXT_ATTR_BULLET_STYLE_ARABIC = _richtext.TEXT_ATTR_BULLET_STYLE_ARABIC
 TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER = _richtext.TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER
@@ -368,9 +367,9 @@ class RichTextAttr(object):
         """SetBulletNumber(self, int n)"""
         return _richtext.RichTextAttr_SetBulletNumber(*args, **kwargs)
 
-    def SetBulletSymbol(*args, **kwargs):
-        """SetBulletSymbol(self, wxChar symbol)"""
-        return _richtext.RichTextAttr_SetBulletSymbol(*args, **kwargs)
+    def SetBulletText(*args, **kwargs):
+        """SetBulletText(self, wxChar symbol)"""
+        return _richtext.RichTextAttr_SetBulletText(*args, **kwargs)
 
     def SetBulletFont(*args, **kwargs):
         """SetBulletFont(self, String bulletFont)"""
@@ -456,9 +455,9 @@ class RichTextAttr(object):
         """GetBulletNumber(self) -> int"""
         return _richtext.RichTextAttr_GetBulletNumber(*args, **kwargs)
 
-    def GetBulletSymbol(*args, **kwargs):
-        """GetBulletSymbol(self) -> wxChar"""
-        return _richtext.RichTextAttr_GetBulletSymbol(*args, **kwargs)
+    def GetBulletText(*args, **kwargs):
+        """GetBulletText(self) -> String"""
+        return _richtext.RichTextAttr_GetBulletText(*args, **kwargs)
 
     def GetBulletFont(*args, **kwargs):
         """GetBulletFont(self) -> String"""
@@ -540,9 +539,9 @@ class RichTextAttr(object):
         """HasBulletNumber(self) -> bool"""
         return _richtext.RichTextAttr_HasBulletNumber(*args, **kwargs)
 
-    def HasBulletSymbol(*args, **kwargs):
-        """HasBulletSymbol(self) -> bool"""
-        return _richtext.RichTextAttr_HasBulletSymbol(*args, **kwargs)
+    def HasBulletText(*args, **kwargs):
+        """HasBulletText(self) -> bool"""
+        return _richtext.RichTextAttr_HasBulletText(*args, **kwargs)
 
     def HasFlag(*args, **kwargs):
         """HasFlag(self, long flag) -> bool"""
@@ -565,7 +564,7 @@ class RichTextAttr(object):
     BulletFont = property(GetBulletFont,SetBulletFont,doc="See `GetBulletFont` and `SetBulletFont`") 
     BulletNumber = property(GetBulletNumber,SetBulletNumber,doc="See `GetBulletNumber` and `SetBulletNumber`") 
     BulletStyle = property(GetBulletStyle,SetBulletStyle,doc="See `GetBulletStyle` and `SetBulletStyle`") 
-    BulletSymbol = property(GetBulletSymbol,SetBulletSymbol,doc="See `GetBulletSymbol` and `SetBulletSymbol`") 
+    BulletText = property(GetBulletText,SetBulletText,doc="See `GetBulletText` and `SetBulletText`") 
     CharacterStyleName = property(GetCharacterStyleName,SetCharacterStyleName,doc="See `GetCharacterStyleName` and `SetCharacterStyleName`") 
     Flags = property(GetFlags,SetFlags,doc="See `GetFlags` and `SetFlags`") 
     Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
@@ -721,6 +720,22 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """
         return _richtext.RichTextCtrl_SaveFile(*args, **kwargs)
 
+    def SetHandlerFlags(*args, **kwargs):
+        """
+        SetHandlerFlags(self, int flags)
+
+        Set the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_SetHandlerFlags(*args, **kwargs)
+
+    def GetHandlerFlags(*args, **kwargs):
+        """
+        GetHandlerFlags(self) -> int
+
+        Get the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_GetHandlerFlags(*args, **kwargs)
+
     def MarkDirty(*args, **kwargs):
         """
         MarkDirty(self)
@@ -1158,7 +1173,7 @@ class RichTextCtrl(_windows.ScrolledWindow):
         return _richtext.RichTextCtrl_EndNumberedBullet(*args, **kwargs)
 
     def BeginSymbolBullet(*args, **kwargs):
-        """BeginSymbolBullet(self, char symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
+        """BeginSymbolBullet(self, String symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
         return _richtext.RichTextCtrl_BeginSymbolBullet(*args, **kwargs)
 
     def EndSymbolBullet(*args, **kwargs):
@@ -1181,6 +1196,38 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """EndParagraphStyle(self) -> bool"""
         return _richtext.RichTextCtrl_EndParagraphStyle(*args, **kwargs)
 
+    def BeginListStyle(*args, **kwargs):
+        """
+        BeginListStyle(self, String listStyle, int level=1, int number=1) -> bool
+
+        Begin named list style.
+        """
+        return _richtext.RichTextCtrl_BeginListStyle(*args, **kwargs)
+
+    def EndListStyle(*args, **kwargs):
+        """
+        EndListStyle(self) -> bool
+
+        End named list style.
+        """
+        return _richtext.RichTextCtrl_EndListStyle(*args, **kwargs)
+
+    def BeginURL(*args, **kwargs):
+        """
+        BeginURL(self, String url, String characterStyle=wxEmptyString) -> bool
+
+        Begin URL.
+        """
+        return _richtext.RichTextCtrl_BeginURL(*args, **kwargs)
+
+    def EndURL(*args, **kwargs):
+        """
+        EndURL(self) -> bool
+
+        End URL.
+        """
+        return _richtext.RichTextCtrl_EndURL(*args, **kwargs)
+
     def SetDefaultStyleToCursorStyle(*args, **kwargs):
         """SetDefaultStyleToCursorStyle(self) -> bool"""
         return _richtext.RichTextCtrl_SetDefaultStyleToCursorStyle(*args, **kwargs)
@@ -1388,6 +1435,10 @@ wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_RIGHT_CLIC
 wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK
 wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK = _richtext.wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK
 wxEVT_COMMAND_RICHTEXT_RETURN = _richtext.wxEVT_COMMAND_RICHTEXT_RETURN
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED
 EVT_RICHTEXT_ITEM_SELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_SELECTED, 1)
 EVT_RICHTEXT_ITEM_DESELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_DESELECTED, 1)
 EVT_RICHTEXT_LEFT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, 1)
@@ -1395,6 +1446,10 @@ EVT_RICHTEXT_RIGHT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK,
 EVT_RICHTEXT_MIDDLE_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, 1)
 EVT_RICHTEXT_LEFT_DCLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, 1)
 EVT_RICHTEXT_RETURN = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_RETURN, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED, 1)
 
 class RichTextEvent(_core.NotifyEvent):
     """Proxy of C++ RichTextEvent class"""
index 92b3fe7ae364442d0f0e306e9c8c7298612c40cf..193ec327b2557238e871b715d5ae26b31d9a0a6c 100644 (file)
@@ -2854,114 +2854,6 @@ SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val)
     return SWIG_OK;
 }
 
-
-SWIGINTERN swig_type_info*
-SWIG_pchar_descriptor()
-{
-  static int init = 0;
-  static swig_type_info* info = 0;
-  if (!init) {
-    info = SWIG_TypeQuery("_p_char");
-    init = 1;
-  }
-  return info;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
-{
-  if (PyString_Check(obj)) {
-    char *cstr; Py_ssize_t len;
-    PyString_AsStringAndSize(obj, &cstr, &len);
-    if (cptr)  {
-      if (alloc) {
-       /* 
-          In python the user should not be able to modify the inner
-          string representation. To warranty that, if you define
-          SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string
-          buffer is always returned.
-
-          The default behavior is just to return the pointer value,
-          so, be careful.
-       */ 
-#if defined(SWIG_PYTHON_SAFE_CSTRINGS)
-       if (*alloc != SWIG_OLDOBJ) 
-#else
-       if (*alloc == SWIG_NEWOBJ) 
-#endif
-         {
-           *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
-           *alloc = SWIG_NEWOBJ;
-         }
-       else {
-         *cptr = cstr;
-         *alloc = SWIG_OLDOBJ;
-       }
-      } else {
-       *cptr = PyString_AsString(obj);
-      }
-    }
-    if (psize) *psize = len + 1;
-    return SWIG_OK;
-  } else {
-    swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
-    if (pchar_descriptor) {
-      void* vptr = 0;
-      if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
-       if (cptr) *cptr = (char *) vptr;
-       if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0;
-       if (alloc) *alloc = SWIG_OLDOBJ;
-       return SWIG_OK;
-      }
-    }
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharArray(PyObject * obj, char *val, size_t size)
-{ 
-  char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
-  int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
-  if (SWIG_IsOK(res)) {
-    if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;
-    if (csize <= size) {
-      if (val) {
-       if (csize) memcpy(val, cptr, csize*sizeof(char));
-       if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
-      }
-      if (alloc == SWIG_NEWOBJ) {
-       delete[] cptr;
-       res = SWIG_DelNewMask(res);
-      }      
-      return res;
-    }
-    if (alloc == SWIG_NEWOBJ) delete[] cptr;
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsVal_char (PyObject * obj, char *val)
-{    
-  int res = SWIG_AsCharArray(obj, val, 1);
-  if (!SWIG_IsOK(res)) {
-    long v;
-    res = SWIG_AddCast(SWIG_AsVal_long (obj, &v));
-    if (SWIG_IsOK(res)) {
-      if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
-       if (val) *val = static_cast< char >(v);
-      } else {
-       res = SWIG_OverflowError;
-      }
-    }
-  }
-  return res;
-}
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -4520,7 +4412,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   wxChar arg2 ;
@@ -4534,19 +4426,19 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
     (char *) "self",(char *) "symbol", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletSymbol",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletText",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxChar,  0  | 0);
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'"); 
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'"); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'");
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'");
     } else {
       wxChar * temp = reinterpret_cast< wxChar * >(argp2);
       arg2 = *temp;
@@ -4555,7 +4447,7 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->SetBulletSymbol(arg2);
+    (arg1)->SetBulletText(arg2);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -5211,10 +5103,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
-  wxChar result;
+  wxString *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -5223,16 +5115,25 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = ((wxRichTextAttr const *)arg1)->GetBulletSymbol();
+    {
+      wxString const &_result_ref = ((wxRichTextAttr const *)arg1)->GetBulletText();
+      result = (wxString *) &_result_ref;
+    }
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxChar(static_cast< const wxChar& >(result))), SWIGTYPE_p_wxChar, SWIG_POINTER_OWN |  0 );
+  {
+#if wxUSE_UNICODE
+    resultobj = PyUnicode_FromWideChar(result->c_str(), result->Len());
+#else
+    resultobj = PyString_FromStringAndSize(result->c_str(), result->Len());
+#endif
+  }
   return resultobj;
 fail:
   return NULL;
@@ -5846,7 +5747,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   bool result;
@@ -5858,12 +5759,12 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletSymbol();
+    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletText();
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -7080,6 +6981,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_SetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "flags", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextCtrl_SetHandlerFlags",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetHandlerFlags(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_GetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_GetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (int)((wxRichTextCtrl const *)arg1)->GetHandlerFlags();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_MarkDirty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -9618,15 +9585,14 @@ fail:
 SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
-  char arg2 ;
+  wxString *arg2 = 0 ;
   int arg3 ;
   int arg4 ;
   int arg5 = (int) wxTEXT_ATTR_BULLET_STYLE_SYMBOL ;
   bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char val2 ;
-  int ecode2 = 0 ;
+  bool temp2 = false ;
   int val3 ;
   int ecode3 = 0 ;
   int val4 ;
@@ -9648,11 +9614,11 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
-  ecode2 = SWIG_AsVal_char(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "2"" of type '" "char""'");
-  } 
-  arg2 = static_cast< char >(val2);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "3"" of type '" "int""'");
@@ -9672,15 +9638,23 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)(arg1)->BeginSymbolBullet(arg2,arg3,arg4,arg5);
+    result = (bool)(arg1)->BeginSymbolBullet((wxString const &)*arg2,arg3,arg4,arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
+  {
+    if (temp2)
+    delete arg2;
+  }
   return resultobj;
 fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
   return NULL;
 }
 
@@ -9871,6 +9845,203 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  int arg3 = (int) 1 ;
+  int arg4 = (int) 1 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "listStyle",(char *) "level",(char *) "number", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:RichTextCtrl_BeginListStyle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_int(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_int(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginListStyle((wxString const &)*arg2,arg3,arg4);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndListStyle();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  wxString const &arg3_defvalue = wxEmptyString ;
+  wxString *arg3 = (wxString *) &arg3_defvalue ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  bool temp3 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "url",(char *) "characterStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:RichTextCtrl_BeginURL",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    {
+      arg3 = wxString_in_helper(obj2);
+      if (arg3 == NULL) SWIG_fail;
+      temp3 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginURL((wxString const &)*arg2,(wxString const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndURL();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -11915,7 +12086,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_SetLineSpacing", (PyCFunction) _wrap_RichTextAttr_SetLineSpacing, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletStyle", (PyCFunction) _wrap_RichTextAttr_SetBulletStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletNumber", (PyCFunction) _wrap_RichTextAttr_SetBulletNumber, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"RichTextAttr_SetBulletSymbol", (PyCFunction) _wrap_RichTextAttr_SetBulletSymbol, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextAttr_SetBulletText", (PyCFunction) _wrap_RichTextAttr_SetBulletText, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletFont", (PyCFunction) _wrap_RichTextAttr_SetBulletFont, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_GetTextColour", (PyCFunction)_wrap_RichTextAttr_GetTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_GetBackgroundColour", (PyCFunction)_wrap_RichTextAttr_GetBackgroundColour, METH_O, NULL},
@@ -11937,7 +12108,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_GetLineSpacing", (PyCFunction)_wrap_RichTextAttr_GetLineSpacing, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletStyle", (PyCFunction)_wrap_RichTextAttr_GetBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletNumber", (PyCFunction)_wrap_RichTextAttr_GetBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_GetBulletSymbol", (PyCFunction)_wrap_RichTextAttr_GetBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_GetBulletText", (PyCFunction)_wrap_RichTextAttr_GetBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletFont", (PyCFunction)_wrap_RichTextAttr_GetBulletFont, METH_O, NULL},
         { (char *)"RichTextAttr_HasTextColour", (PyCFunction)_wrap_RichTextAttr_HasTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_HasBackgroundColour", (PyCFunction)_wrap_RichTextAttr_HasBackgroundColour, METH_O, NULL},
@@ -11958,7 +12129,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_HasParagraphStyleName", (PyCFunction)_wrap_RichTextAttr_HasParagraphStyleName, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletStyle", (PyCFunction)_wrap_RichTextAttr_HasBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletNumber", (PyCFunction)_wrap_RichTextAttr_HasBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_HasBulletSymbol", (PyCFunction)_wrap_RichTextAttr_HasBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_HasBulletText", (PyCFunction)_wrap_RichTextAttr_HasBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_HasFlag", (PyCFunction) _wrap_RichTextAttr_HasFlag, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_IsCharacterStyle", (PyCFunction)_wrap_RichTextAttr_IsCharacterStyle, METH_O, NULL},
         { (char *)"RichTextAttr_IsParagraphStyle", (PyCFunction)_wrap_RichTextAttr_IsParagraphStyle, METH_O, NULL},
@@ -11989,6 +12160,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_Remove", (PyCFunction) _wrap_RichTextCtrl_Remove, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_LoadFile", (PyCFunction) _wrap_RichTextCtrl_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_SaveFile", (PyCFunction) _wrap_RichTextCtrl_SaveFile, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_SetHandlerFlags", (PyCFunction) _wrap_RichTextCtrl_SetHandlerFlags, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_GetHandlerFlags", (PyCFunction)_wrap_RichTextCtrl_GetHandlerFlags, METH_O, NULL},
         { (char *)"RichTextCtrl_MarkDirty", (PyCFunction)_wrap_RichTextCtrl_MarkDirty, METH_O, NULL},
         { (char *)"RichTextCtrl_DiscardEdits", (PyCFunction)_wrap_RichTextCtrl_DiscardEdits, METH_O, NULL},
         { (char *)"RichTextCtrl_SetMaxLength", (PyCFunction) _wrap_RichTextCtrl_SetMaxLength, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -12063,6 +12236,10 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_EndCharacterStyle", (PyCFunction)_wrap_RichTextCtrl_EndCharacterStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_BeginParagraphStyle", (PyCFunction) _wrap_RichTextCtrl_BeginParagraphStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_EndParagraphStyle", (PyCFunction)_wrap_RichTextCtrl_EndParagraphStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginListStyle", (PyCFunction) _wrap_RichTextCtrl_BeginListStyle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndListStyle", (PyCFunction)_wrap_RichTextCtrl_EndListStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginURL", (PyCFunction) _wrap_RichTextCtrl_BeginURL, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndURL", (PyCFunction)_wrap_RichTextCtrl_EndURL, METH_O, NULL},
         { (char *)"RichTextCtrl_SetDefaultStyleToCursorStyle", (PyCFunction)_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectNone", (PyCFunction)_wrap_RichTextCtrl_SelectNone, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectWord", (PyCFunction) _wrap_RichTextCtrl_SelectWord, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -14269,7 +14446,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "TEXT_ATTR_PARAGRAPH_STYLE_NAME",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_PARAGRAPH_STYLE_NAME)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_NUMBER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_NUMBER)));
-  SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_SYMBOL",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_SYMBOL)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_NONE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_NONE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_ARABIC",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_ARABIC)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER)));
@@ -14302,6 +14478,10 @@ SWIGEXPORT void SWIG_init(void) {
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_RETURN", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_RETURN));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED));
   
   wxRichTextModuleInit();
   
index 9575e1663f257343d1b35778f6d10a73fcd267da..3d26ec5ccb94920f1c4456b382caee679966111a 100644 (file)
@@ -2775,7 +2775,7 @@ IMP_PYCALLBACK_OBJECT_STRING_pure(wxPyXmlSubclassFactory, wxXmlSubclassFactory,
 class wxPyXmlResourceHandler : public wxXmlResourceHandler {
 public:
     wxPyXmlResourceHandler() : wxXmlResourceHandler() {}
-    //~wxPyXmlResourceHandler();
+    ~wxPyXmlResourceHandler() {}
 
     // Base class virtuals
 
index 660573487ad3068196e84c04af08b57e8b784121..b4a2481d233b6b1526d8f2cb0a84b301e02bb2bf 100644 (file)
@@ -1649,6 +1649,260 @@ def Point2DFromPoint(*args, **kwargs):
 
 #---------------------------------------------------------------------------
 
+Inside = _core_.Inside
+OutLeft = _core_.OutLeft
+OutRight = _core_.OutRight
+OutTop = _core_.OutTop
+OutBottom = _core_.OutBottom
+class Rect2D(object):
+    """
+    wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+    with floating point component values.
+    """
+    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, wxDouble x=0.0, wxDouble y=0.0, wxDouble w=0.0, wxDouble h=0.0) -> Rect2D
+
+        wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+        with floating point component values.
+        """
+        _core_.Rect2D_swiginit(self,_core_.new_Rect2D(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Rect2D
+    __del__ = lambda self : None;
+    def GetPosition(*args, **kwargs):
+        """GetPosition(self) -> Point2D"""
+        return _core_.Rect2D_GetPosition(*args, **kwargs)
+
+    def GetSize(*args, **kwargs):
+        """GetSize(self) -> Size"""
+        return _core_.Rect2D_GetSize(*args, **kwargs)
+
+    def GetLeft(*args, **kwargs):
+        """GetLeft(self) -> wxDouble"""
+        return _core_.Rect2D_GetLeft(*args, **kwargs)
+
+    def SetLeft(*args, **kwargs):
+        """SetLeft(self, wxDouble n)"""
+        return _core_.Rect2D_SetLeft(*args, **kwargs)
+
+    def MoveLeftTo(*args, **kwargs):
+        """MoveLeftTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveLeftTo(*args, **kwargs)
+
+    def GetTop(*args, **kwargs):
+        """GetTop(self) -> wxDouble"""
+        return _core_.Rect2D_GetTop(*args, **kwargs)
+
+    def SetTop(*args, **kwargs):
+        """SetTop(self, wxDouble n)"""
+        return _core_.Rect2D_SetTop(*args, **kwargs)
+
+    def MoveTopTo(*args, **kwargs):
+        """MoveTopTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveTopTo(*args, **kwargs)
+
+    def GetBottom(*args, **kwargs):
+        """GetBottom(self) -> wxDouble"""
+        return _core_.Rect2D_GetBottom(*args, **kwargs)
+
+    def SetBottom(*args, **kwargs):
+        """SetBottom(self, wxDouble n)"""
+        return _core_.Rect2D_SetBottom(*args, **kwargs)
+
+    def MoveBottomTo(*args, **kwargs):
+        """MoveBottomTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveBottomTo(*args, **kwargs)
+
+    def GetRight(*args, **kwargs):
+        """GetRight(self) -> wxDouble"""
+        return _core_.Rect2D_GetRight(*args, **kwargs)
+
+    def SetRight(*args, **kwargs):
+        """SetRight(self, wxDouble n)"""
+        return _core_.Rect2D_SetRight(*args, **kwargs)
+
+    def MoveRightTo(*args, **kwargs):
+        """MoveRightTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveRightTo(*args, **kwargs)
+
+    def GetLeftTop(*args, **kwargs):
+        """GetLeftTop(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftTop(*args, **kwargs)
+
+    def SetLeftTop(*args, **kwargs):
+        """SetLeftTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftTop(*args, **kwargs)
+
+    def MoveLeftTopTo(*args, **kwargs):
+        """MoveLeftTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftTopTo(*args, **kwargs)
+
+    def GetLeftBottom(*args, **kwargs):
+        """GetLeftBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftBottom(*args, **kwargs)
+
+    def SetLeftBottom(*args, **kwargs):
+        """SetLeftBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftBottom(*args, **kwargs)
+
+    def MoveLeftBottomTo(*args, **kwargs):
+        """MoveLeftBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftBottomTo(*args, **kwargs)
+
+    def GetRightTop(*args, **kwargs):
+        """GetRightTop(self) -> Point2D"""
+        return _core_.Rect2D_GetRightTop(*args, **kwargs)
+
+    def SetRightTop(*args, **kwargs):
+        """SetRightTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightTop(*args, **kwargs)
+
+    def MoveRightTopTo(*args, **kwargs):
+        """MoveRightTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightTopTo(*args, **kwargs)
+
+    def GetRightBottom(*args, **kwargs):
+        """GetRightBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetRightBottom(*args, **kwargs)
+
+    def SetRightBottom(*args, **kwargs):
+        """SetRightBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightBottom(*args, **kwargs)
+
+    def MoveRightBottomTo(*args, **kwargs):
+        """MoveRightBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightBottomTo(*args, **kwargs)
+
+    def GetCentre(*args, **kwargs):
+        """GetCentre(self) -> Point2D"""
+        return _core_.Rect2D_GetCentre(*args, **kwargs)
+
+    def SetCentre(*args, **kwargs):
+        """SetCentre(self, Point2D pt)"""
+        return _core_.Rect2D_SetCentre(*args, **kwargs)
+
+    def MoveCentreTo(*args, **kwargs):
+        """MoveCentreTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveCentreTo(*args, **kwargs)
+
+    def GetOutcode(*args, **kwargs):
+        """GetOutcode(self, Point2D pt) -> int"""
+        return _core_.Rect2D_GetOutcode(*args, **kwargs)
+
+    def Contains(*args, **kwargs):
+        """Contains(self, Point2D pt) -> bool"""
+        return _core_.Rect2D_Contains(*args, **kwargs)
+
+    def ContainsRect(*args, **kwargs):
+        """ContainsRect(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_ContainsRect(*args, **kwargs)
+
+    def IsEmpty(*args, **kwargs):
+        """IsEmpty(self) -> bool"""
+        return _core_.Rect2D_IsEmpty(*args, **kwargs)
+
+    def HaveEqualSize(*args, **kwargs):
+        """HaveEqualSize(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_HaveEqualSize(*args, **kwargs)
+
+    def Inset(*args):
+        """
+        Inset(self, wxDouble x, wxDouble y)
+        Inset(self, wxDouble left, wxDouble top, wxDouble right, wxDouble bottom)
+        """
+        return _core_.Rect2D_Inset(*args)
+
+    def Offset(*args, **kwargs):
+        """Offset(self, Point2D pt)"""
+        return _core_.Rect2D_Offset(*args, **kwargs)
+
+    def ConstrainTo(*args, **kwargs):
+        """ConstrainTo(self, Rect2D rect)"""
+        return _core_.Rect2D_ConstrainTo(*args, **kwargs)
+
+    def Interpolate(*args, **kwargs):
+        """Interpolate(self, int widthfactor, int heightfactor) -> Point2D"""
+        return _core_.Rect2D_Interpolate(*args, **kwargs)
+
+    def Intersect(*args, **kwargs):
+        """Intersect(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Intersect(*args, **kwargs)
+
+    def CreateIntersection(*args, **kwargs):
+        """CreateIntersection(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateIntersection(*args, **kwargs)
+
+    def Intersects(*args, **kwargs):
+        """Intersects(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_Intersects(*args, **kwargs)
+
+    def Union(*args, **kwargs):
+        """Union(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Union(*args, **kwargs)
+
+    def CreateUnion(*args, **kwargs):
+        """CreateUnion(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateUnion(*args, **kwargs)
+
+    def Scale(*args):
+        """
+        Scale(self, wxDouble f)
+        Scale(self, int num, int denum)
+        """
+        return _core_.Rect2D_Scale(*args)
+
+    def __eq__(*args, **kwargs):
+        """
+        __eq__(self, PyObject other) -> bool
+
+        Test for equality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___eq__(*args, **kwargs)
+
+    def __ne__(*args, **kwargs):
+        """
+        __ne__(self, PyObject other) -> bool
+
+        Test for inequality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___ne__(*args, **kwargs)
+
+    x = property(_core_.Rect2D_x_get, _core_.Rect2D_x_set)
+    y = property(_core_.Rect2D_y_get, _core_.Rect2D_y_set)
+    width = property(_core_.Rect2D_width_get, _core_.Rect2D_width_set)
+    height = property(_core_.Rect2D_height_get, _core_.Rect2D_height_set)
+    def Set(*args, **kwargs):
+        """Set(self, wxDouble x=0, wxDouble y=0, wxDouble width=0, wxDouble height=0)"""
+        return _core_.Rect2D_Set(*args, **kwargs)
+
+    def Get(*args, **kwargs):
+        """
+        Get() -> (x,y, width, height)
+
+        Return x, y, width and height y properties as a tuple.
+        """
+        return _core_.Rect2D_Get(*args, **kwargs)
+
+    def __str__(self):                   return str(self.Get())
+    def __repr__(self):                  return 'wx.Rect2D'+str(self.Get())
+    def __len__(self):                   return len(self.Get())
+    def __getitem__(self, index):        return self.Get()[index]
+    def __setitem__(self, index, val):
+        if index == 0: self.x = val
+        elif index == 1: self.y = val
+        elif index == 2: self.width = val
+        elif index == 3: self.height = val                        
+        else: raise IndexError
+    def __nonzero__(self):               return self.Get() != (0.0, 0.0, 0.0, 0.0)
+    __safe_for_unpickling__ = True
+    def __reduce__(self):                return (wx.Rect2D, self.Get())
+
+_core_.Rect2D_swigregister(Rect2D)
+
+#---------------------------------------------------------------------------
+
 FromStart = _core_.FromStart
 FromCurrent = _core_.FromCurrent
 FromEnd = _core_.FromEnd
index 5130610910149418b80dd0af3e6ce5962f5513c1..5f05a15043d99d84903f5a6a022b9696b4531e0c 100644 (file)
@@ -2496,107 +2496,109 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDateEvent swig_types[30]
 #define SWIGTYPE_p_wxDateTime swig_types[31]
 #define SWIGTYPE_p_wxDisplayChangedEvent swig_types[32]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[33]
-#define SWIGTYPE_p_wxDuplexMode swig_types[34]
-#define SWIGTYPE_p_wxEraseEvent swig_types[35]
-#define SWIGTYPE_p_wxEvent swig_types[36]
-#define SWIGTYPE_p_wxEventLoop swig_types[37]
-#define SWIGTYPE_p_wxEventLoopActivator swig_types[38]
-#define SWIGTYPE_p_wxEvtHandler swig_types[39]
-#define SWIGTYPE_p_wxFSFile swig_types[40]
-#define SWIGTYPE_p_wxFileSystem swig_types[41]
-#define SWIGTYPE_p_wxFileSystemHandler swig_types[42]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[43]
-#define SWIGTYPE_p_wxFocusEvent swig_types[44]
-#define SWIGTYPE_p_wxFont swig_types[45]
-#define SWIGTYPE_p_wxFrame swig_types[46]
-#define SWIGTYPE_p_wxGBPosition swig_types[47]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[48]
-#define SWIGTYPE_p_wxGBSpan swig_types[49]
-#define SWIGTYPE_p_wxGIFHandler swig_types[50]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[51]
-#define SWIGTYPE_p_wxGridSizer swig_types[52]
-#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[53]
-#define SWIGTYPE_p_wxICOHandler swig_types[54]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[55]
-#define SWIGTYPE_p_wxIdleEvent swig_types[56]
-#define SWIGTYPE_p_wxImage swig_types[57]
-#define SWIGTYPE_p_wxImageHandler swig_types[58]
-#define SWIGTYPE_p_wxImageHistogram swig_types[59]
-#define SWIGTYPE_p_wxImage_HSVValue swig_types[60]
-#define SWIGTYPE_p_wxImage_RGBValue swig_types[61]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[62]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[63]
-#define SWIGTYPE_p_wxInputStream swig_types[64]
-#define SWIGTYPE_p_wxInternetFSHandler swig_types[65]
-#define SWIGTYPE_p_wxItemContainer swig_types[66]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[67]
-#define SWIGTYPE_p_wxKeyEvent swig_types[68]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[69]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[70]
-#define SWIGTYPE_p_wxMemoryFSHandler swig_types[71]
-#define SWIGTYPE_p_wxMenu swig_types[72]
-#define SWIGTYPE_p_wxMenuBar swig_types[73]
-#define SWIGTYPE_p_wxMenuBarBase swig_types[74]
-#define SWIGTYPE_p_wxMenuEvent swig_types[75]
-#define SWIGTYPE_p_wxMenuItem swig_types[76]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[77]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[78]
-#define SWIGTYPE_p_wxMouseEvent swig_types[79]
-#define SWIGTYPE_p_wxMoveEvent swig_types[80]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[81]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[82]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[83]
-#define SWIGTYPE_p_wxObject swig_types[84]
-#define SWIGTYPE_p_wxOutputStream swig_types[85]
-#define SWIGTYPE_p_wxPCXHandler swig_types[86]
-#define SWIGTYPE_p_wxPNGHandler swig_types[87]
-#define SWIGTYPE_p_wxPNMHandler swig_types[88]
-#define SWIGTYPE_p_wxPaintEvent swig_types[89]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[90]
-#define SWIGTYPE_p_wxPaperSize swig_types[91]
-#define SWIGTYPE_p_wxPoint swig_types[92]
-#define SWIGTYPE_p_wxPoint2D swig_types[93]
-#define SWIGTYPE_p_wxPropagateOnce swig_types[94]
-#define SWIGTYPE_p_wxPropagationDisabler swig_types[95]
-#define SWIGTYPE_p_wxPyApp swig_types[96]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[97]
-#define SWIGTYPE_p_wxPyDropTarget swig_types[98]
-#define SWIGTYPE_p_wxPyEvent swig_types[99]
-#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[100]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[101]
-#define SWIGTYPE_p_wxPyInputStream swig_types[102]
-#define SWIGTYPE_p_wxPySizer swig_types[103]
-#define SWIGTYPE_p_wxPyValidator swig_types[104]
-#define SWIGTYPE_p_wxQuantize swig_types[105]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[106]
-#define SWIGTYPE_p_wxRealPoint swig_types[107]
-#define SWIGTYPE_p_wxRect swig_types[108]
-#define SWIGTYPE_p_wxRegion swig_types[109]
-#define SWIGTYPE_p_wxScrollEvent swig_types[110]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[111]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[112]
-#define SWIGTYPE_p_wxShowEvent swig_types[113]
-#define SWIGTYPE_p_wxSize swig_types[114]
-#define SWIGTYPE_p_wxSizeEvent swig_types[115]
-#define SWIGTYPE_p_wxSizer swig_types[116]
-#define SWIGTYPE_p_wxSizerItem swig_types[117]
-#define SWIGTYPE_p_wxStaticBox swig_types[118]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[119]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[120]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[121]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[122]
-#define SWIGTYPE_p_wxToolTip swig_types[123]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[124]
-#define SWIGTYPE_p_wxValidator swig_types[125]
-#define SWIGTYPE_p_wxVisualAttributes swig_types[126]
-#define SWIGTYPE_p_wxWindow swig_types[127]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[128]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[129]
-#define SWIGTYPE_p_wxXPMHandler swig_types[130]
-#define SWIGTYPE_p_wxZipFSHandler swig_types[131]
-static swig_type_info *swig_types[133];
-static swig_module_info swig_module = {swig_types, 132, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDouble swig_types[33]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[34]
+#define SWIGTYPE_p_wxDuplexMode swig_types[35]
+#define SWIGTYPE_p_wxEraseEvent swig_types[36]
+#define SWIGTYPE_p_wxEvent swig_types[37]
+#define SWIGTYPE_p_wxEventLoop swig_types[38]
+#define SWIGTYPE_p_wxEventLoopActivator swig_types[39]
+#define SWIGTYPE_p_wxEvtHandler swig_types[40]
+#define SWIGTYPE_p_wxFSFile swig_types[41]
+#define SWIGTYPE_p_wxFileSystem swig_types[42]
+#define SWIGTYPE_p_wxFileSystemHandler swig_types[43]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[44]
+#define SWIGTYPE_p_wxFocusEvent swig_types[45]
+#define SWIGTYPE_p_wxFont swig_types[46]
+#define SWIGTYPE_p_wxFrame swig_types[47]
+#define SWIGTYPE_p_wxGBPosition swig_types[48]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[49]
+#define SWIGTYPE_p_wxGBSpan swig_types[50]
+#define SWIGTYPE_p_wxGIFHandler swig_types[51]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[52]
+#define SWIGTYPE_p_wxGridSizer swig_types[53]
+#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[54]
+#define SWIGTYPE_p_wxICOHandler swig_types[55]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[56]
+#define SWIGTYPE_p_wxIdleEvent swig_types[57]
+#define SWIGTYPE_p_wxImage swig_types[58]
+#define SWIGTYPE_p_wxImageHandler swig_types[59]
+#define SWIGTYPE_p_wxImageHistogram swig_types[60]
+#define SWIGTYPE_p_wxImage_HSVValue swig_types[61]
+#define SWIGTYPE_p_wxImage_RGBValue swig_types[62]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[63]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[64]
+#define SWIGTYPE_p_wxInputStream swig_types[65]
+#define SWIGTYPE_p_wxInternetFSHandler swig_types[66]
+#define SWIGTYPE_p_wxItemContainer swig_types[67]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[68]
+#define SWIGTYPE_p_wxKeyEvent swig_types[69]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[70]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[71]
+#define SWIGTYPE_p_wxMemoryFSHandler swig_types[72]
+#define SWIGTYPE_p_wxMenu swig_types[73]
+#define SWIGTYPE_p_wxMenuBar swig_types[74]
+#define SWIGTYPE_p_wxMenuBarBase swig_types[75]
+#define SWIGTYPE_p_wxMenuEvent swig_types[76]
+#define SWIGTYPE_p_wxMenuItem swig_types[77]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[78]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[79]
+#define SWIGTYPE_p_wxMouseEvent swig_types[80]
+#define SWIGTYPE_p_wxMoveEvent swig_types[81]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[82]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[83]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[84]
+#define SWIGTYPE_p_wxObject swig_types[85]
+#define SWIGTYPE_p_wxOutputStream swig_types[86]
+#define SWIGTYPE_p_wxPCXHandler swig_types[87]
+#define SWIGTYPE_p_wxPNGHandler swig_types[88]
+#define SWIGTYPE_p_wxPNMHandler swig_types[89]
+#define SWIGTYPE_p_wxPaintEvent swig_types[90]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[91]
+#define SWIGTYPE_p_wxPaperSize swig_types[92]
+#define SWIGTYPE_p_wxPoint swig_types[93]
+#define SWIGTYPE_p_wxPoint2D swig_types[94]
+#define SWIGTYPE_p_wxPropagateOnce swig_types[95]
+#define SWIGTYPE_p_wxPropagationDisabler swig_types[96]
+#define SWIGTYPE_p_wxPyApp swig_types[97]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[98]
+#define SWIGTYPE_p_wxPyDropTarget swig_types[99]
+#define SWIGTYPE_p_wxPyEvent swig_types[100]
+#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[101]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[102]
+#define SWIGTYPE_p_wxPyInputStream swig_types[103]
+#define SWIGTYPE_p_wxPySizer swig_types[104]
+#define SWIGTYPE_p_wxPyValidator swig_types[105]
+#define SWIGTYPE_p_wxQuantize swig_types[106]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[107]
+#define SWIGTYPE_p_wxRealPoint swig_types[108]
+#define SWIGTYPE_p_wxRect swig_types[109]
+#define SWIGTYPE_p_wxRect2D swig_types[110]
+#define SWIGTYPE_p_wxRegion swig_types[111]
+#define SWIGTYPE_p_wxScrollEvent swig_types[112]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[113]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[114]
+#define SWIGTYPE_p_wxShowEvent swig_types[115]
+#define SWIGTYPE_p_wxSize swig_types[116]
+#define SWIGTYPE_p_wxSizeEvent swig_types[117]
+#define SWIGTYPE_p_wxSizer swig_types[118]
+#define SWIGTYPE_p_wxSizerItem swig_types[119]
+#define SWIGTYPE_p_wxStaticBox swig_types[120]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[121]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[122]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[123]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[124]
+#define SWIGTYPE_p_wxToolTip swig_types[125]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[126]
+#define SWIGTYPE_p_wxValidator swig_types[127]
+#define SWIGTYPE_p_wxVisualAttributes swig_types[128]
+#define SWIGTYPE_p_wxWindow swig_types[129]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[130]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[131]
+#define SWIGTYPE_p_wxXPMHandler swig_types[132]
+#define SWIGTYPE_p_wxZipFSHandler swig_types[133]
+static swig_type_info *swig_types[135];
+static swig_module_info swig_module = {swig_types, 134, 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)
 
@@ -2892,7 +2894,9 @@ static wxPyCoreAPI API = {
     wxPyCheckForApp,
 
     wxArrayDouble2PyList_helper,
-    wxPoint2D_LIST_helper
+    wxPoint2D_LIST_helper,
+    wxRect2D_helper,
+
 };
 
 #endif
@@ -3012,11 +3016,11 @@ SWIG_AsVal_float (PyObject * obj, float *val)
 }
 
 SWIGINTERN PyObject *wxSize_Get(wxSize *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3045,11 +3049,11 @@ SWIGINTERN void wxRealPoint_Set(wxRealPoint *self,double x,double y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxRealPoint_Get(wxRealPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y));
-            wxPyEndBlockThreads(blocked);
+            //PyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxPoint___eq__(wxPoint *self,PyObject *other){
@@ -3075,11 +3079,11 @@ SWIGINTERN void wxPoint_Set(wxPoint *self,long x,long y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxPoint_Get(wxPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxRect___eq__(wxRect *self,PyObject *other){
@@ -3107,13 +3111,13 @@ SWIGINTERN void wxRect_Set(wxRect *self,int x=0,int y=0,int width=0,int height=0
             self->height = height;
         }
 SWIGINTERN PyObject *wxRect_Get(wxRect *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(4);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             PyTuple_SET_ITEM(tup, 2, PyInt_FromLong(self->width));
             PyTuple_SET_ITEM(tup, 3, PyInt_FromLong(self->height));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3127,10 +3131,10 @@ SWIGINTERN PyObject *wxRect_Get(wxRect *self){
         dest = reg1.GetBox();
 
         if (dest != wxRect(0,0,0,0)) {
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             wxRect* newRect = new wxRect(dest);
             obj = wxPyConstructObject((void*)newRect, wxT("wxRect"), true);
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return obj;
         }
         Py_INCREF(Py_None);
@@ -3160,11 +3164,45 @@ SWIGINTERN void wxPoint2D_Set(wxPoint2D *self,double x=0,double y=0){
             self->m_y = y;
         }
 SWIGINTERN PyObject *wxPoint2D_Get(wxPoint2D *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
+            return tup;
+        }
+SWIGINTERN bool wxRect2D___eq__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return false;
+            if ( ! wxRect2D_helper(other, &obj) ) {
+                PyErr_Clear();
+                return false;
+            }
+            return self->operator==(*obj);
+        }
+SWIGINTERN bool wxRect2D___ne__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return true;
+            if ( ! wxRect2D_helper(other, &obj)) {
+                PyErr_Clear();
+                return true;
+            }
+            return self->operator!=(*obj);
+        }
+SWIGINTERN void wxRect2D_Set(wxRect2D *self,wxDouble x=0,wxDouble y=0,wxDouble width=0,wxDouble height=0){
+            self->m_x = x;
+            self->m_y = y;
+            self->m_width = width;
+            self->m_height = height;
+        }
+SWIGINTERN PyObject *wxRect2D_Get(wxRect2D *self){
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            PyObject* tup = PyTuple_New(4);
+            PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
+            PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
+            PyTuple_SET_ITEM(tup, 2, PyFloat_FromDouble(self->m_width));
+            PyTuple_SET_ITEM(tup, 3, PyFloat_FromDouble(self->m_height));
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -4616,9 +4654,7 @@ SWIGINTERN PyObject *_wrap_new_Size(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxSize *)new wxSize(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxSize, SWIG_POINTER_NEW |  0 );
@@ -4643,10 +4679,8 @@ SWIGINTERN PyObject *_wrap_delete_Size(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4747,9 +4781,7 @@ SWIGINTERN PyObject *_wrap_Size___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4784,9 +4816,7 @@ SWIGINTERN PyObject *_wrap_Size___sub__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4820,9 +4850,7 @@ SWIGINTERN PyObject *_wrap_Size_IncTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4856,9 +4884,7 @@ SWIGINTERN PyObject *_wrap_Size_DecTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4903,9 +4929,7 @@ SWIGINTERN PyObject *_wrap_Size_IncBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4950,9 +4974,7 @@ SWIGINTERN PyObject *_wrap_Size_DecBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4997,9 +5019,7 @@ SWIGINTERN PyObject *_wrap_Size_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< float >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Scale(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5044,9 +5064,7 @@ SWIGINTERN PyObject *_wrap_Size_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Set(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5082,9 +5100,7 @@ SWIGINTERN PyObject *_wrap_Size_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5120,9 +5136,7 @@ SWIGINTERN PyObject *_wrap_Size_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5148,9 +5162,7 @@ SWIGINTERN PyObject *_wrap_Size_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5176,9 +5188,7 @@ SWIGINTERN PyObject *_wrap_Size_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5204,9 +5214,7 @@ SWIGINTERN PyObject *_wrap_Size_IsFullySpecified(PyObject *SWIGUNUSEDPARM(self),
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxSize const *)arg1)->IsFullySpecified();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -5242,9 +5250,7 @@ SWIGINTERN PyObject *_wrap_Size_SetDefaults(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetDefaults((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5270,9 +5276,7 @@ SWIGINTERN PyObject *_wrap_Size_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxSize_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5430,9 +5434,7 @@ SWIGINTERN PyObject *_wrap_new_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRealPoint *)new wxRealPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_NEW |  0 );
@@ -5457,10 +5459,8 @@ SWIGINTERN PyObject *_wrap_delete_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5561,9 +5561,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___add__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5598,9 +5596,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___sub__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5645,9 +5641,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Set(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< double >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRealPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5673,9 +5667,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Get(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRealPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5833,9 +5825,7 @@ SWIGINTERN PyObject *_wrap_new_Point(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint *)new wxPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_NEW |  0 );
@@ -5860,10 +5850,8 @@ SWIGINTERN PyObject *_wrap_delete_Point(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5964,9 +5952,7 @@ SWIGINTERN PyObject *_wrap_Point___add__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6001,9 +5987,7 @@ SWIGINTERN PyObject *_wrap_Point___sub__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6038,12 +6022,10 @@ SWIGINTERN PyObject *_wrap_Point___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator +=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6078,12 +6060,10 @@ SWIGINTERN PyObject *_wrap_Point___isub__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator -=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6128,9 +6108,7 @@ SWIGINTERN PyObject *_wrap_Point_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg3 = static_cast< long >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6156,9 +6134,7 @@ SWIGINTERN PyObject *_wrap_Point_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -6232,9 +6208,7 @@ SWIGINTERN PyObject *_wrap_new_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg4 = static_cast< int >(val4);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect(arg1,arg2,arg3,arg4);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_NEW |  0 );
@@ -6267,9 +6241,7 @@ SWIGINTERN PyObject *_wrap_new_RectPP(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6302,9 +6274,7 @@ SWIGINTERN PyObject *_wrap_new_RectPS(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6330,9 +6300,7 @@ SWIGINTERN PyObject *_wrap_new_RectS(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     if ( ! wxSize_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxSize const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6357,10 +6325,8 @@ SWIGINTERN PyObject *_wrap_delete_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6386,9 +6352,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetX();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6424,9 +6388,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetX(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6452,9 +6414,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)(arg1)->GetY();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6490,9 +6450,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetY(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6518,9 +6476,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6556,9 +6512,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6584,9 +6538,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6622,9 +6574,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6650,9 +6600,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetPosition();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6686,9 +6634,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetPosition((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6714,9 +6660,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetSize();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -6750,9 +6694,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetSize((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6778,9 +6720,7 @@ SWIGINTERN PyObject *_wrap_Rect_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->IsEmpty();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -6808,9 +6748,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6844,9 +6782,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6872,9 +6808,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6908,9 +6842,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6936,9 +6868,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6972,9 +6902,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7000,9 +6928,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -7036,9 +6962,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7064,9 +6988,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7092,9 +7014,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetTop();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7120,9 +7040,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetBottom();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7148,9 +7066,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7186,9 +7102,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetLeft(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7224,9 +7138,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetRight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7262,9 +7174,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTop(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7300,9 +7210,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottom(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7348,12 +7256,10 @@ SWIGINTERN PyObject *_wrap_Rect_Inflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Inflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7399,12 +7305,10 @@ SWIGINTERN PyObject *_wrap_Rect_Deflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Deflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7449,9 +7353,7 @@ SWIGINTERN PyObject *_wrap_Rect_OffsetXY(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7485,9 +7387,7 @@ SWIGINTERN PyObject *_wrap_Rect_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7522,9 +7422,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Intersect((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7559,9 +7457,7 @@ SWIGINTERN PyObject *_wrap_Rect_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Union((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7596,9 +7492,7 @@ SWIGINTERN PyObject *_wrap_Rect___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->operator +((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7633,12 +7527,10 @@ SWIGINTERN PyObject *_wrap_Rect___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->operator +=((wxRect const &)*arg2);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7750,9 +7642,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsXY(PyObject *SWIGUNUSEDPARM(self), PyObj
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7789,9 +7679,7 @@ SWIGINTERN PyObject *_wrap_Rect_Contains(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7828,9 +7716,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7867,9 +7753,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Intersects((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7917,9 +7801,7 @@ SWIGINTERN PyObject *_wrap_Rect_CenterIn(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg3 = static_cast< int >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->CenterIn((wxRect const &)*arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -8202,9 +8084,7 @@ SWIGINTERN PyObject *_wrap_Rect_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg5 = static_cast< int >(val5);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRect_Set(arg1,arg2,arg3,arg4,arg5);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8230,9 +8110,7 @@ SWIGINTERN PyObject *_wrap_Rect_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRect_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -8324,9 +8202,7 @@ SWIGINTERN PyObject *_wrap_new_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_NEW |  0 );
@@ -8352,9 +8228,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DCopy(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint2D_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint2D const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8380,9 +8254,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DFromPoint(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8407,10 +8279,8 @@ SWIGINTERN PyObject *_wrap_delete_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8443,9 +8313,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetFloor(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetFloor(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8490,9 +8358,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetRounded(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetRounded(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8530,9 +8396,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorLength(PyObject *SWIGUNUSEDPARM(self
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorLength();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8558,9 +8422,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorAngle();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8596,9 +8458,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorLength(PyObject *SWIGUNUSEDPARM(self
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorLength(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8634,9 +8494,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorAngle(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8671,9 +8529,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistance(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistance((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8708,9 +8564,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistanceSquare(PyObject *SWIGUNUSEDPARM(se
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistanceSquare((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8745,9 +8599,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDotProduct(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDotProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8782,9 +8634,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetCrossProduct(PyObject *SWIGUNUSEDPARM(self
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetCrossProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8810,9 +8660,7 @@ SWIGINTERN PyObject *_wrap_Point2D___neg__(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8847,12 +8695,10 @@ SWIGINTERN PyObject *_wrap_Point2D___iadd__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator +=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8887,12 +8733,10 @@ SWIGINTERN PyObject *_wrap_Point2D___isub__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator -=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8927,12 +8771,10 @@ SWIGINTERN PyObject *_wrap_Point2D___imul__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator *=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8967,12 +8809,10 @@ SWIGINTERN PyObject *_wrap_Point2D___idiv__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator /=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -9193,9 +9033,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg3 = static_cast< double >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint2D_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -9221,9 +9059,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint2D_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -9244,6 +9080,2276 @@ SWIGINTERN PyObject *Point2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDouble arg1 = (wxDouble) 0.0 ;
+  wxDouble arg2 = (wxDouble) 0.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxRect2D *result = 0 ;
+  void *argp1 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OOOO:new_Rect2D",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (obj0) {
+    {
+      res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res1)) {
+        SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp1) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp1);
+        arg1 = *temp;
+        if (SWIG_IsNewObj(res1)) delete temp;
+      }
+    }
+  }
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  {
+    result = (wxRect2D *)new wxRect2D(arg1,arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect2D, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Rect2D" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetPosition" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetPosition();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxSize 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetSize" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetSize();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeft" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeft();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeft",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeft" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetLeft(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveLeftTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetTop(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveTopTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetBottom(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveBottomTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRight" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRight();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRight",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRight" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetRight(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveRightTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetCentre" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetCentre();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetCentre",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetCentre" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetCentre((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveCentreTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveCentreTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveCentreTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveCentreTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetOutcode(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxOutCode result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_GetOutcode",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetOutcode" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (wxOutCode)((wxRect2D const *)arg1)->GetOutcode((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Contains(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Contains",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Contains" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ContainsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ContainsRect" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  bool 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_IsEmpty" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (bool)((wxRect2D const *)arg1)->IsEmpty();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_HaveEqualSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_HaveEqualSize",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_HaveEqualSize" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->HaveEqualSize((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    res4 = SWIG_ConvertPtr(swig_obj[3], &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res4)) {
+      SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp4) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+      arg4 = *temp;
+      if (SWIG_IsNewObj(res4)) delete temp;
+    }
+  }
+  {
+    res5 = SWIG_ConvertPtr(swig_obj[4], &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res5)) {
+      SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp5) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+      arg5 = *temp;
+      if (SWIG_IsNewObj(res5)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Inset",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 3) {
+    return _wrap_Rect2D_Inset__SWIG_0(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_Rect2D_Inset__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Inset'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Offset",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Offset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Offset((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ConstrainTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ConstrainTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ConstrainTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->ConstrainTo((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Interpolate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  wxPoint2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "widthfactor",(char *) "heightfactor", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Rect2D_Interpolate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Interpolate" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Interpolate" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Interpolate" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    result = (arg1)->Interpolate(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersect" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Intersect((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateIntersection(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateIntersection",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateIntersection" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateIntersection((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersects",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersects" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Intersects((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Union",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Union" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Union((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateUnion(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateUnion",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateUnion" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateUnion((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->Scale(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Scale" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    (arg1)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Scale",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_Rect2D_Scale__SWIG_0(self, argc, argv);
+  }
+  if (argc == 3) {
+    return _wrap_Rect2D_Scale__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Scale'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___eq__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___eq__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___eq__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___eq__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___ne__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___ne__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___ne__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___ne__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_x_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_x = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_x);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_y_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_y = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_y);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_width_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_width = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_width);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_height_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_height = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_height);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 = (wxDouble) 0 ;
+  wxDouble arg3 = (wxDouble) 0 ;
+  wxDouble arg4 = (wxDouble) 0 ;
+  wxDouble arg5 = (wxDouble) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 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 *) "width",(char *) "height", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOO:Rect2D_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  if (obj4) {
+    {
+      res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res5)) {
+        SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp5) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+        arg5 = *temp;
+        if (SWIG_IsNewObj(res5)) delete temp;
+      }
+    }
+  }
+  {
+    wxRect2D_Set(arg1,arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (PyObject *)wxRect2D_Get(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = result;
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *Rect2D_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxRect2D, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *Rect2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN int DefaultPosition_set(PyObject *) {
   SWIG_Error(SWIG_AttributeError,"Variable DefaultPosition is read-only.");
   return 1;
@@ -54433,6 +56539,66 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Point2D_Get", (PyCFunction)_wrap_Point2D_Get, METH_O, NULL},
         { (char *)"Point2D_swigregister", Point2D_swigregister, METH_VARARGS, NULL},
         { (char *)"Point2D_swiginit", Point2D_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_Rect2D", (PyCFunction) _wrap_new_Rect2D, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_Rect2D", (PyCFunction)_wrap_delete_Rect2D, METH_O, NULL},
+        { (char *)"Rect2D_GetPosition", (PyCFunction)_wrap_Rect2D_GetPosition, METH_O, NULL},
+        { (char *)"Rect2D_GetSize", (PyCFunction)_wrap_Rect2D_GetSize, METH_O, NULL},
+        { (char *)"Rect2D_GetLeft", (PyCFunction)_wrap_Rect2D_GetLeft, METH_O, NULL},
+        { (char *)"Rect2D_SetLeft", (PyCFunction) _wrap_Rect2D_SetLeft, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTo", (PyCFunction) _wrap_Rect2D_MoveLeftTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetTop", (PyCFunction)_wrap_Rect2D_GetTop, METH_O, NULL},
+        { (char *)"Rect2D_SetTop", (PyCFunction) _wrap_Rect2D_SetTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveTopTo", (PyCFunction) _wrap_Rect2D_MoveTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetBottom", (PyCFunction)_wrap_Rect2D_GetBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetBottom", (PyCFunction) _wrap_Rect2D_SetBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveBottomTo", (PyCFunction) _wrap_Rect2D_MoveBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRight", (PyCFunction)_wrap_Rect2D_GetRight, METH_O, NULL},
+        { (char *)"Rect2D_SetRight", (PyCFunction) _wrap_Rect2D_SetRight, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTo", (PyCFunction) _wrap_Rect2D_MoveRightTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftTop", (PyCFunction)_wrap_Rect2D_GetLeftTop, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftTop", (PyCFunction) _wrap_Rect2D_SetLeftTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTopTo", (PyCFunction) _wrap_Rect2D_MoveLeftTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftBottom", (PyCFunction)_wrap_Rect2D_GetLeftBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftBottom", (PyCFunction) _wrap_Rect2D_SetLeftBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftBottomTo", (PyCFunction) _wrap_Rect2D_MoveLeftBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightTop", (PyCFunction)_wrap_Rect2D_GetRightTop, METH_O, NULL},
+        { (char *)"Rect2D_SetRightTop", (PyCFunction) _wrap_Rect2D_SetRightTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTopTo", (PyCFunction) _wrap_Rect2D_MoveRightTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightBottom", (PyCFunction)_wrap_Rect2D_GetRightBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetRightBottom", (PyCFunction) _wrap_Rect2D_SetRightBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightBottomTo", (PyCFunction) _wrap_Rect2D_MoveRightBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetCentre", (PyCFunction)_wrap_Rect2D_GetCentre, METH_O, NULL},
+        { (char *)"Rect2D_SetCentre", (PyCFunction) _wrap_Rect2D_SetCentre, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveCentreTo", (PyCFunction) _wrap_Rect2D_MoveCentreTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetOutcode", (PyCFunction) _wrap_Rect2D_GetOutcode, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Contains", (PyCFunction) _wrap_Rect2D_Contains, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ContainsRect", (PyCFunction) _wrap_Rect2D_ContainsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_IsEmpty", (PyCFunction)_wrap_Rect2D_IsEmpty, METH_O, NULL},
+        { (char *)"Rect2D_HaveEqualSize", (PyCFunction) _wrap_Rect2D_HaveEqualSize, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Inset", _wrap_Rect2D_Inset, METH_VARARGS, NULL},
+        { (char *)"Rect2D_Offset", (PyCFunction) _wrap_Rect2D_Offset, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ConstrainTo", (PyCFunction) _wrap_Rect2D_ConstrainTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Interpolate", (PyCFunction) _wrap_Rect2D_Interpolate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersect", (PyCFunction) _wrap_Rect2D_Intersect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateIntersection", (PyCFunction) _wrap_Rect2D_CreateIntersection, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersects", (PyCFunction) _wrap_Rect2D_Intersects, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Union", (PyCFunction) _wrap_Rect2D_Union, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateUnion", (PyCFunction) _wrap_Rect2D_CreateUnion, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Scale", _wrap_Rect2D_Scale, METH_VARARGS, NULL},
+        { (char *)"Rect2D___eq__", (PyCFunction) _wrap_Rect2D___eq__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D___ne__", (PyCFunction) _wrap_Rect2D___ne__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_x_set", _wrap_Rect2D_x_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_x_get", (PyCFunction)_wrap_Rect2D_x_get, METH_O, NULL},
+        { (char *)"Rect2D_y_set", _wrap_Rect2D_y_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_y_get", (PyCFunction)_wrap_Rect2D_y_get, METH_O, NULL},
+        { (char *)"Rect2D_width_set", _wrap_Rect2D_width_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_width_get", (PyCFunction)_wrap_Rect2D_width_get, METH_O, NULL},
+        { (char *)"Rect2D_height_set", _wrap_Rect2D_height_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_height_get", (PyCFunction)_wrap_Rect2D_height_get, METH_O, NULL},
+        { (char *)"Rect2D_Set", (PyCFunction) _wrap_Rect2D_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Get", (PyCFunction)_wrap_Rect2D_Get, METH_O, NULL},
+        { (char *)"Rect2D_swigregister", Rect2D_swigregister, METH_VARARGS, NULL},
+        { (char *)"Rect2D_swiginit", Rect2D_swiginit, METH_VARARGS, NULL},
         { (char *)"new_InputStream", (PyCFunction) _wrap_new_InputStream, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_InputStream", (PyCFunction)_wrap_delete_InputStream, METH_O, NULL},
         { (char *)"InputStream_close", (PyCFunction)_wrap_InputStream_close, METH_O, NULL},
@@ -56343,6 +58509,7 @@ static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", "wxDateEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateTime = {"_p_wxDateTime", "wxDateTime *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", "wxDisplayChangedEvent *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDouble = {"_p_wxDouble", "wxDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", "wxDropFilesEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", "wxEraseEvent *", 0, 0, (void*)0, 0};
@@ -56419,6 +58586,7 @@ static swig_type_info _swigt__p_wxQuantize = {"_p_wxQuantize", "wxQuantize *", 0
 static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", "wxQueryNewPaletteEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRealPoint = {"_p_wxRealPoint", "wxRealPoint *", 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_wxRect2D = {"_p_wxRect2D", "wxRect2D *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", "wxScrollEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", "wxScrollWinEvent *", 0, 0, (void*)0, 0};
@@ -56477,6 +58645,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDateTime,
   &_swigt__p_wxDisplayChangedEvent,
+  &_swigt__p_wxDouble,
   &_swigt__p_wxDropFilesEvent,
   &_swigt__p_wxDuplexMode,
   &_swigt__p_wxEraseEvent,
@@ -56553,6 +58722,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRealPoint,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2D,
   &_swigt__p_wxRegion,
   &_swigt__p_wxScrollEvent,
   &_swigt__p_wxScrollWinEvent,
@@ -56611,6 +58781,7 @@ static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0,
 static swig_cast_info _swigc__p_wxDateEvent[] = {  {&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDateTime[] = {  {&_swigt__p_wxDateTime, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {  {&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDouble[] = {  {&_swigt__p_wxDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDropFilesEvent[] = {  {&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEraseEvent[] = {  {&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56687,6 +58858,7 @@ static swig_cast_info _swigc__p_wxQuantize[] = {  {&_swigt__p_wxQuantize, 0, 0,
 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {  {&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRealPoint[] = {  {&_swigt__p_wxRealPoint, 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_wxRect2D[] = {  {&_swigt__p_wxRect2D, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollEvent[] = {  {&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollWinEvent[] = {  {&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56745,6 +58917,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDateEvent,
   _swigc__p_wxDateTime,
   _swigc__p_wxDisplayChangedEvent,
+  _swigc__p_wxDouble,
   _swigc__p_wxDropFilesEvent,
   _swigc__p_wxDuplexMode,
   _swigc__p_wxEraseEvent,
@@ -56821,6 +58994,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRealPoint,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2D,
   _swigc__p_wxRegion,
   _swigc__p_wxScrollEvent,
   _swigc__p_wxScrollWinEvent,
@@ -58010,6 +60184,11 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "CURSOR_COPY_ARROW",SWIG_From_int(static_cast< int >(wxCURSOR_COPY_ARROW)));
   SWIG_Python_SetConstant(d, "CURSOR_ARROWWAIT",SWIG_From_int(static_cast< int >(wxCURSOR_ARROWWAIT)));
   SWIG_Python_SetConstant(d, "CURSOR_MAX",SWIG_From_int(static_cast< int >(wxCURSOR_MAX)));
+  SWIG_Python_SetConstant(d, "Inside",SWIG_From_int(static_cast< int >(wxInside)));
+  SWIG_Python_SetConstant(d, "OutLeft",SWIG_From_int(static_cast< int >(wxOutLeft)));
+  SWIG_Python_SetConstant(d, "OutRight",SWIG_From_int(static_cast< int >(wxOutRight)));
+  SWIG_Python_SetConstant(d, "OutTop",SWIG_From_int(static_cast< int >(wxOutTop)));
+  SWIG_Python_SetConstant(d, "OutBottom",SWIG_From_int(static_cast< int >(wxOutBottom)));
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultPosition",DefaultPosition_get, DefaultPosition_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultSize",DefaultSize_get, DefaultSize_set);
   SWIG_Python_SetConstant(d, "FromStart",SWIG_From_int(static_cast< int >(wxFromStart)));
index 6bdfc2d8c74ad1882b20d3d12a63663a0242dae8..7e797a6bf02512bcd415ac84b140046186a1b235 100644 (file)
@@ -4382,6 +4382,88 @@ _gdi_.DC_swigregister(DC)
 
 #---------------------------------------------------------------------------
 
+class DCTextColourChanger(object):
+    """
+    wx.DCTextColourChanger can be used to temporarily change the DC text
+    colour and restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Colour col) -> DCTextColourChanger
+
+        wx.DCTextColourChanger can be used to temporarily change the DC text
+        colour and restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCTextColourChanger_swiginit(self,_gdi_.new_DCTextColourChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCTextColourChanger
+    __del__ = lambda self : None;
+_gdi_.DCTextColourChanger_swigregister(DCTextColourChanger)
+
+class DCPenChanger(object):
+    """
+    wx.DCPenChanger can be used to temporarily change the DC pen and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Pen pen) -> DCPenChanger
+
+        wx.DCPenChanger can be used to temporarily change the DC pen and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCPenChanger_swiginit(self,_gdi_.new_DCPenChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCPenChanger
+    __del__ = lambda self : None;
+_gdi_.DCPenChanger_swigregister(DCPenChanger)
+
+class DCBrushChanger(object):
+    """
+    wx.DCBrushChanger can be used to temporarily change the DC brush and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Brush brush) -> DCBrushChanger
+
+        wx.DCBrushChanger can be used to temporarily change the DC brush and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCBrushChanger_swiginit(self,_gdi_.new_DCBrushChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCBrushChanger
+    __del__ = lambda self : None;
+_gdi_.DCBrushChanger_swigregister(DCBrushChanger)
+
+class DCClipper(object):
+    """
+    wx.wxDCClipper sets the DC's clipping region when it is constructed,
+    and then automatically destroys the clipping region when the clipper
+    goes out of scope.
+    """
+    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): 
+        """
+        __init__(self, DC dc, Region r) -> DCClipper
+        __init__(self, DC dc, Rect r) -> DCClipper
+        __init__(self, DC dc, int x, int y, int w, int h) -> DCClipper
+
+        wx.wxDCClipper sets the DC's clipping region when it is constructed,
+        and then automatically destroys the clipping region when the clipper
+        goes out of scope.
+        """
+        _gdi_.DCClipper_swiginit(self,_gdi_.new_DCClipper(*args))
+    __swig_destroy__ = _gdi_.delete_DCClipper
+    __del__ = lambda self : None;
+_gdi_.DCClipper_swigregister(DCClipper)
+
+#---------------------------------------------------------------------------
+
 class MemoryDC(DC):
     """
     A memory device context provides a means to draw graphics onto a
@@ -4856,38 +4938,105 @@ _gdi_.PrinterDC_swigregister(PrinterDC)
 
 #---------------------------------------------------------------------------
 
-class GraphicsPath(object):
+class GraphicsObject(_core.Object):
+    """Proxy of C++ GraphicsObject 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, GraphicsRenderer renderer=None) -> GraphicsObject"""
+        _gdi_.GraphicsObject_swiginit(self,_gdi_.new_GraphicsObject(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsObject
+    __del__ = lambda self : None;
+    def IsNull(*args, **kwargs):
+        """IsNull(self) -> bool"""
+        return _gdi_.GraphicsObject_IsNull(*args, **kwargs)
+
+    def GetRenderer(*args, **kwargs):
+        """GetRenderer(self) -> GraphicsRenderer"""
+        return _gdi_.GraphicsObject_GetRenderer(*args, **kwargs)
+
+_gdi_.GraphicsObject_swigregister(GraphicsObject)
+
+class GraphicsPen(GraphicsObject):
+    """Proxy of C++ GraphicsPen 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) -> GraphicsPen"""
+        _gdi_.GraphicsPen_swiginit(self,_gdi_.new_GraphicsPen(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsPen
+    __del__ = lambda self : None;
+_gdi_.GraphicsPen_swigregister(GraphicsPen)
+
+class GraphicsBrush(GraphicsObject):
+    """Proxy of C++ GraphicsBrush 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) -> GraphicsBrush"""
+        _gdi_.GraphicsBrush_swiginit(self,_gdi_.new_GraphicsBrush(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsBrush
+    __del__ = lambda self : None;
+_gdi_.GraphicsBrush_swigregister(GraphicsBrush)
+
+class GraphicsFont(GraphicsObject):
+    """Proxy of C++ GraphicsFont 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) -> GraphicsFont"""
+        _gdi_.GraphicsFont_swiginit(self,_gdi_.new_GraphicsFont(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsFont
+    __del__ = lambda self : None;
+_gdi_.GraphicsFont_swigregister(GraphicsFont)
+
+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')
     def __init__(self): raise AttributeError, "No constructor defined"
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def MoveToPoint(*args, **kwargs):
+    def Clone(*args, **kwargs):
+        """Clone(self) -> GraphicsPath"""
+        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
+
+    def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
+        MoveToPoint(self, Point2D p)
 
         Begins a new subpath at (x,y)
         """
-        return _gdi_.GraphicsPath_MoveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_MoveToPoint(*args)
 
-    def AddLineToPoint(*args, **kwargs):
+    def AddLineToPoint(*args):
         """
         AddLineToPoint(self, Double x, Double y)
+        AddLineToPoint(self, Point2D p)
 
         Adds a straight line from the current point to (x,y) 
         """
-        return _gdi_.GraphicsPath_AddLineToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddLineToPoint(*args)
 
-    def AddCurveToPoint(*args, **kwargs):
+    def AddCurveToPoint(*args):
         """
         AddCurveToPoint(self, Double cx1, Double cy1, Double cx2, Double cy2, Double x, 
             Double y)
+        AddCurveToPoint(self, Point2D c1, Point2D c2, Point2D e)
 
         Adds a cubic Bezier curve from the current point, using two control
         points and an end point
         """
-        return _gdi_.GraphicsPath_AddCurveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddCurveToPoint(*args)
+
+    def AddPath(*args, **kwargs):
+        """
+        AddPath(self, GraphicsPath path)
+
+        adds another path
+        """
+        return _gdi_.GraphicsPath_AddPath(*args, **kwargs)
 
     def CloseSubpath(*args, **kwargs):
         """
@@ -4905,15 +5054,17 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_GetCurrentPoint(*args, **kwargs)
 
-    def AddArc(*args, **kwargs):
+    def AddArc(*args):
         """
         AddArc(self, Double x, Double y, Double r, Double startAngle, Double endAngle, 
             bool clockwise)
+        AddArc(self, Point2D c, Double r, Double startAngle, Double endAngle, 
+            bool clockwise)
 
         Adds an arc of a circle centering at (x,y) with radius (r) from
         startAngle to endAngle
         """
-        return _gdi_.GraphicsPath_AddArc(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddArc(*args)
 
     def AddQuadCurveToPoint(*args, **kwargs):
         """
@@ -4949,9 +5100,179 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_AddArcToPoint(*args, **kwargs)
 
+    def AddEllipse(*args, **kwargs):
+        """
+        AddEllipse(self, Double x, Double y, Double w, Double h)
+
+        appends an ellipse
+        """
+        return _gdi_.GraphicsPath_AddEllipse(*args, **kwargs)
+
+    def AddRoundedRectangle(*args, **kwargs):
+        """
+        AddRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        appends a rounded rectangle
+        """
+        return _gdi_.GraphicsPath_AddRoundedRectangle(*args, **kwargs)
+
+    def GetNativePath(*args, **kwargs):
+        """
+        GetNativePath(self) -> void
+
+        returns the native path
+        """
+        return _gdi_.GraphicsPath_GetNativePath(*args, **kwargs)
+
+    def UnGetNativePath(*args, **kwargs):
+        """
+        UnGetNativePath(self, void p)
+
+        give the native path returned by GetNativePath() back (there might be some
+        deallocations necessary)
+        """
+        return _gdi_.GraphicsPath_UnGetNativePath(*args, **kwargs)
+
+    def Transform(*args, **kwargs):
+        """
+        Transform(self, GraphicsMatrix matrix)
+
+        transforms each point of this path by the matrix
+        """
+        return _gdi_.GraphicsPath_Transform(*args, **kwargs)
+
+    def GetBox(*args, **kwargs):
+        """
+        GetBox(self) -> wxRect2DDouble
+
+        gets the bounding box enclosing all points (possibly including control points)
+        """
+        return _gdi_.GraphicsPath_GetBox(*args, **kwargs)
+
+    def Contains(*args):
+        """
+        Contains(self, Double x, Double y, int fillStyle=WINDING_RULE) -> bool
+        Contains(self, wxPoint2DDouble c, int fillStyle=WINDING_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)
 
-class GraphicsContext(object):
+        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"""
     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"
@@ -4973,86 +5294,187 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
     CreateFromNative = staticmethod(CreateFromNative)
+    def CreateFromNativeWindow(*args, **kwargs):
+        """CreateFromNativeWindow(void window) -> GraphicsContext"""
+        return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+    CreateFromNativeWindow = staticmethod(CreateFromNativeWindow)
     def CreatePath(*args, **kwargs):
-        """CreatePath(self) -> GraphicsPath"""
+        """
+        CreatePath(self) -> GraphicsPath
+
+        creates a path instance that corresponds to the type of graphics context, ie GDIPlus, Cairo, CoreGraphics ...
+        """
         return _gdi_.GraphicsContext_CreatePath(*args, **kwargs)
 
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsContext_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsContext_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+
+        sets the brush to a linear gradient, starting at (x1,y1) with color c1
+        to (x2,y2) with color c2
+        """
+        return _gdi_.GraphicsContext_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+
+        sets the brush to a radial gradient originating at (xo,yc) with color
+        oColor and ends on a circle around (xc,yc) with radius r and color
+        cColor
+
+        """
+        return _gdi_.GraphicsContext_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """
+        CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont
+
+        sets the font
+        """
+        return _gdi_.GraphicsContext_CreateFont(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+
+        create a 'native' matrix corresponding to these values
+        """
+        return _gdi_.GraphicsContext_CreateMatrix(*args, **kwargs)
+
     def PushState(*args, **kwargs):
-        """PushState(self)"""
+        """
+        PushState(self)
+
+        push the current state of the context, ie the transformation matrix on a stack
+        """
         return _gdi_.GraphicsContext_PushState(*args, **kwargs)
 
     def PopState(*args, **kwargs):
-        """PopState(self)"""
+        """
+        PopState(self)
+
+        pops a stored state from the stack
+        """
         return _gdi_.GraphicsContext_PopState(*args, **kwargs)
 
     def ClipRegion(*args, **kwargs):
-        """ClipRegion(self, Region region)"""
+        """
+        ClipRegion(self, Region region)
+
+        clips drawings to the region
+        """
         return _gdi_.GraphicsContext_ClipRegion(*args, **kwargs)
 
     def Clip(*args, **kwargs):
-        """Clip(self, Double x, Double y, Double w, Double h)"""
+        """
+        Clip(self, Double x, Double y, Double w, Double h)
+
+        clips drawings to the rect
+        """
         return _gdi_.GraphicsContext_Clip(*args, **kwargs)
 
     def ResetClip(*args, **kwargs):
-        """ResetClip(self)"""
+        """
+        ResetClip(self)
+
+        resets the clipping to original extent
+        """
         return _gdi_.GraphicsContext_ResetClip(*args, **kwargs)
 
     def GetNativeContext(*args, **kwargs):
-        """GetNativeContext(self) -> void"""
+        """
+        GetNativeContext(self) -> void
+
+        returns the native context
+        """
         return _gdi_.GraphicsContext_GetNativeContext(*args, **kwargs)
 
     def Translate(*args, **kwargs):
-        """Translate(self, Double dx, Double dy)"""
+        """
+        Translate(self, Double dx, Double dy)
+
+        translate the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Translate(*args, **kwargs)
 
     def Scale(*args, **kwargs):
-        """Scale(self, Double xScale, Double yScale)"""
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        scale the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Scale(*args, **kwargs)
 
     def Rotate(*args, **kwargs):
-        """Rotate(self, Double angle)"""
-        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
-
-    def SetPen(*args, **kwargs):
-        """SetPen(self, Pen pen)"""
-        return _gdi_.GraphicsContext_SetPen(*args, **kwargs)
+        """
+        Rotate(self, Double angle)
 
-    def SetBrush(*args, **kwargs):
-        """SetBrush(self, Brush brush)"""
-        return _gdi_.GraphicsContext_SetBrush(*args, **kwargs)
+        rotate (radians) the current transformation matrix CTM of the context
+        """
+        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
-    def SetLinearGradientBrush(*args, **kwargs):
+    def SetPen(*args):
         """
-        SetLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
-            Colour c2)
+        SetPen(self, GraphicsPen pen)
+        SetPen(self, Pen pen)
+
+        sets the stroke pen
         """
-        return _gdi_.GraphicsContext_SetLinearGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetPen(*args)
 
-    def SetRadialGradientBrush(*args, **kwargs):
+    def SetBrush(*args):
         """
-        SetRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
-            Colour oColour, Colour cColour)
+        SetBrush(self, GraphicsBrush brush)
+        SetBrush(self, Brush brush)
+
+        sets the brush for filling
         """
-        return _gdi_.GraphicsContext_SetRadialGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetBrush(*args)
 
-    def SetFont(*args, **kwargs):
-        """SetFont(self, Font font)"""
-        return _gdi_.GraphicsContext_SetFont(*args, **kwargs)
+    def SetFont(*args):
+        """
+        SetFont(self, GraphicsFont font)
+        SetFont(self, Font font, Colour colour=*wxBLACK)
 
-    def SetTextColour(*args, **kwargs):
-        """SetTextColour(self, Colour col)"""
-        return _gdi_.GraphicsContext_SetTextColour(*args, **kwargs)
+        sets the font
+        """
+        return _gdi_.GraphicsContext_SetFont(*args)
 
     def StrokePath(*args, **kwargs):
-        """StrokePath(self, GraphicsPath path)"""
+        """
+        StrokePath(self, GraphicsPath path)
+
+        strokes along a path with the current pen
+        """
         return _gdi_.GraphicsContext_StrokePath(*args, **kwargs)
 
     def FillPath(*args, **kwargs):
-        """FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        fills a path with the current brush
+        """
         return _gdi_.GraphicsContext_FillPath(*args, **kwargs)
 
     def DrawPath(*args, **kwargs):
-        """DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        draws a path by first filling and then stroking
+        """
         return _gdi_.GraphicsContext_DrawPath(*args, **kwargs)
 
     def DrawText(*args, **kwargs):
@@ -5084,33 +5506,69 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_DrawIcon(*args, **kwargs)
 
     def StrokeLine(*args, **kwargs):
-        """StrokeLine(self, Double x1, Double y1, Double x2, Double y2)"""
+        """
+        StrokeLine(self, Double x1, Double y1, Double x2, Double y2)
+
+        strokes a single line
+        """
         return _gdi_.GraphicsContext_StrokeLine(*args, **kwargs)
 
     def StrokeLines(*args, **kwargs):
-        """StrokeLines(self, List points)"""
+        """
+        StrokeLines(self, List points)
+
+        stroke lines connecting each of the points
+        """
         return _gdi_.GraphicsContext_StrokeLines(*args, **kwargs)
 
     def StrokeLineSegements(*args, **kwargs):
-        """StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)"""
+        """
+        StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)
+
+        stroke disconnected lines from begin to end points
+        """
         return _gdi_.GraphicsContext_StrokeLineSegements(*args, **kwargs)
 
     def DrawLines(*args, **kwargs):
-        """DrawLines(self, size_t points, int fillStyle=WINDING_RULE)"""
+        """
+        DrawLines(self, size_t points, int fillStyle=WINDING_RULE)
+
+        draws a polygon
+        """
         return _gdi_.GraphicsContext_DrawLines(*args, **kwargs)
 
     def DrawRectangle(*args, **kwargs):
-        """DrawRectangle(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawRectangle(self, Double x, Double y, Double w, Double h)
+
+        draws a rectangle
+        """
         return _gdi_.GraphicsContext_DrawRectangle(*args, **kwargs)
 
     def DrawEllipse(*args, **kwargs):
-        """DrawEllipse(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawEllipse(self, Double x, Double y, Double w, Double h)
+
+        draws an ellipse
+        """
         return _gdi_.GraphicsContext_DrawEllipse(*args, **kwargs)
 
     def DrawRoundedRectangle(*args, **kwargs):
-        """DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)"""
+        """
+        DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        draws a rounded rectangle
+        """
         return _gdi_.GraphicsContext_DrawRoundedRectangle(*args, **kwargs)
 
+    def ShouldOffset(*args, **kwargs):
+        """
+        ShouldOffset(self) -> bool
+
+        helper to determine if a 0.5 offset should be applied for the drawing operation
+        """
+        return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
+
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
 
 def GraphicsContext_Create(*args):
@@ -5126,6 +5584,80 @@ def GraphicsContext_CreateFromNative(*args, **kwargs):
   """GraphicsContext_CreateFromNative(void context) -> GraphicsContext"""
   return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
+def GraphicsContext_CreateFromNativeWindow(*args, **kwargs):
+  """GraphicsContext_CreateFromNativeWindow(void window) -> GraphicsContext"""
+  return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+class GraphicsRenderer(_core.Object):
+    """Proxy of C++ GraphicsRenderer 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_GraphicsRenderer
+    __del__ = lambda self : None;
+    def GetDefaultRenderer(*args, **kwargs):
+        """GetDefaultRenderer() -> GraphicsRenderer"""
+        return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args, **kwargs)
+
+    GetDefaultRenderer = staticmethod(GetDefaultRenderer)
+    def CreateContext(*args):
+        """
+        CreateContext(self, WindowDC dc) -> GraphicsContext
+        CreateContext(self, Window window) -> GraphicsContext
+        """
+        return _gdi_.GraphicsRenderer_CreateContext(*args)
+
+    def CreateContextFromNativeContext(*args, **kwargs):
+        """CreateContextFromNativeContext(self, void context) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeContext(*args, **kwargs)
+
+    def CreateContextFromNativeWindow(*args, **kwargs):
+        """CreateContextFromNativeWindow(self, void window) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeWindow(*args, **kwargs)
+
+    def CreatePath(*args, **kwargs):
+        """CreatePath(self) -> GraphicsPath"""
+        return _gdi_.GraphicsRenderer_CreatePath(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+        """
+        return _gdi_.GraphicsRenderer_CreateMatrix(*args, **kwargs)
+
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsRenderer_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsRenderer_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont"""
+        return _gdi_.GraphicsRenderer_CreateFont(*args, **kwargs)
+
+_gdi_.GraphicsRenderer_swigregister(GraphicsRenderer)
+
+def GraphicsRenderer_GetDefaultRenderer(*args):
+  """GraphicsRenderer_GetDefaultRenderer() -> GraphicsRenderer"""
+  return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args)
+
 class GCDC(DC):
     """Proxy of C++ GCDC class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -5457,7 +5989,6 @@ class GDIObjListBase(object):
     __swig_destroy__ = _gdi_.delete_GDIObjListBase
     __del__ = lambda self : None;
 _gdi_.GDIObjListBase_swigregister(GDIObjListBase)
-cvar = _gdi_.cvar
 NullBitmap = cvar.NullBitmap
 NullIcon = cvar.NullIcon
 NullCursor = cvar.NullCursor
index 3dc4626839d3b39a504d452d61f6fa6334b23734..6dde3efa0da6d52943700887b9d53adbc9159878 100644 (file)
@@ -2500,129 +2500,141 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxControlWithItems swig_types[34]
 #define SWIGTYPE_p_wxCursor swig_types[35]
 #define SWIGTYPE_p_wxDC swig_types[36]
-#define SWIGTYPE_p_wxDCOverlay swig_types[37]
-#define SWIGTYPE_p_wxDash swig_types[38]
-#define SWIGTYPE_p_wxDateEvent swig_types[39]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[40]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[41]
-#define SWIGTYPE_p_wxDuplexMode swig_types[42]
-#define SWIGTYPE_p_wxEffects swig_types[43]
-#define SWIGTYPE_p_wxEncodingConverter swig_types[44]
-#define SWIGTYPE_p_wxEraseEvent swig_types[45]
-#define SWIGTYPE_p_wxEvent swig_types[46]
-#define SWIGTYPE_p_wxEvtHandler swig_types[47]
-#define SWIGTYPE_p_wxFSFile swig_types[48]
-#define SWIGTYPE_p_wxFileSystem swig_types[49]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[50]
-#define SWIGTYPE_p_wxFocusEvent swig_types[51]
-#define SWIGTYPE_p_wxFont swig_types[52]
-#define SWIGTYPE_p_wxFontList swig_types[53]
-#define SWIGTYPE_p_wxFontMapper swig_types[54]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[55]
-#define SWIGTYPE_p_wxGCDC swig_types[56]
-#define SWIGTYPE_p_wxGDIObjListBase swig_types[57]
-#define SWIGTYPE_p_wxGDIObject swig_types[58]
-#define SWIGTYPE_p_wxGIFHandler swig_types[59]
-#define SWIGTYPE_p_wxGraphicsContext swig_types[60]
-#define SWIGTYPE_p_wxGraphicsPath swig_types[61]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[62]
-#define SWIGTYPE_p_wxGridSizer swig_types[63]
-#define SWIGTYPE_p_wxHeaderButtonParams swig_types[64]
-#define SWIGTYPE_p_wxICOHandler swig_types[65]
-#define SWIGTYPE_p_wxIcon swig_types[66]
-#define SWIGTYPE_p_wxIconBundle swig_types[67]
-#define SWIGTYPE_p_wxIconLocation swig_types[68]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[69]
-#define SWIGTYPE_p_wxIdleEvent swig_types[70]
-#define SWIGTYPE_p_wxImage swig_types[71]
-#define SWIGTYPE_p_wxImageHandler swig_types[72]
-#define SWIGTYPE_p_wxImageList swig_types[73]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[74]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[75]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[76]
-#define SWIGTYPE_p_wxKeyEvent swig_types[77]
-#define SWIGTYPE_p_wxLanguageInfo swig_types[78]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[79]
-#define SWIGTYPE_p_wxLocale swig_types[80]
-#define SWIGTYPE_p_wxMask swig_types[81]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[82]
-#define SWIGTYPE_p_wxMemoryDC swig_types[83]
-#define SWIGTYPE_p_wxMenu swig_types[84]
-#define SWIGTYPE_p_wxMenuBar swig_types[85]
-#define SWIGTYPE_p_wxMenuEvent swig_types[86]
-#define SWIGTYPE_p_wxMenuItem swig_types[87]
-#define SWIGTYPE_p_wxMetaFile swig_types[88]
-#define SWIGTYPE_p_wxMetaFileDC swig_types[89]
-#define SWIGTYPE_p_wxMirrorDC swig_types[90]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[91]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[92]
-#define SWIGTYPE_p_wxMouseEvent swig_types[93]
-#define SWIGTYPE_p_wxMoveEvent swig_types[94]
-#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[95]
-#define SWIGTYPE_p_wxNativeFontInfo swig_types[96]
-#define SWIGTYPE_p_wxNativePixelData swig_types[97]
-#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[98]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[99]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[100]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[101]
-#define SWIGTYPE_p_wxObject swig_types[102]
-#define SWIGTYPE_p_wxOverlay swig_types[103]
-#define SWIGTYPE_p_wxPCXHandler swig_types[104]
-#define SWIGTYPE_p_wxPNGHandler swig_types[105]
-#define SWIGTYPE_p_wxPNMHandler swig_types[106]
-#define SWIGTYPE_p_wxPaintDC swig_types[107]
-#define SWIGTYPE_p_wxPaintEvent swig_types[108]
-#define SWIGTYPE_p_wxPalette swig_types[109]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[110]
-#define SWIGTYPE_p_wxPaperSize swig_types[111]
-#define SWIGTYPE_p_wxPen swig_types[112]
-#define SWIGTYPE_p_wxPenList swig_types[113]
-#define SWIGTYPE_p_wxPixelDataBase swig_types[114]
-#define SWIGTYPE_p_wxPoint swig_types[115]
-#define SWIGTYPE_p_wxPoint2D swig_types[116]
-#define SWIGTYPE_p_wxPostScriptDC swig_types[117]
-#define SWIGTYPE_p_wxPrintData swig_types[118]
-#define SWIGTYPE_p_wxPrinterDC swig_types[119]
-#define SWIGTYPE_p_wxPseudoDC swig_types[120]
-#define SWIGTYPE_p_wxPyApp swig_types[121]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[122]
-#define SWIGTYPE_p_wxPyEvent swig_types[123]
-#define SWIGTYPE_p_wxPyFontEnumerator swig_types[124]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[125]
-#define SWIGTYPE_p_wxPyLocale swig_types[126]
-#define SWIGTYPE_p_wxPySizer swig_types[127]
-#define SWIGTYPE_p_wxPyValidator swig_types[128]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[129]
-#define SWIGTYPE_p_wxRect swig_types[130]
-#define SWIGTYPE_p_wxRegion swig_types[131]
-#define SWIGTYPE_p_wxRegionIterator swig_types[132]
-#define SWIGTYPE_p_wxRendererNative swig_types[133]
-#define SWIGTYPE_p_wxRendererVersion swig_types[134]
-#define SWIGTYPE_p_wxScreenDC swig_types[135]
-#define SWIGTYPE_p_wxScrollEvent swig_types[136]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[137]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[138]
-#define SWIGTYPE_p_wxShowEvent swig_types[139]
-#define SWIGTYPE_p_wxSize swig_types[140]
-#define SWIGTYPE_p_wxSizeEvent swig_types[141]
-#define SWIGTYPE_p_wxSizer swig_types[142]
-#define SWIGTYPE_p_wxSizerItem swig_types[143]
-#define SWIGTYPE_p_wxSplitterRenderParams swig_types[144]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[145]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[146]
-#define SWIGTYPE_p_wxStockGDI swig_types[147]
-#define SWIGTYPE_p_wxString swig_types[148]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[149]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[150]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[151]
-#define SWIGTYPE_p_wxValidator swig_types[152]
-#define SWIGTYPE_p_wxWindow swig_types[153]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[154]
-#define SWIGTYPE_p_wxWindowDC swig_types[155]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[156]
-#define SWIGTYPE_p_wxXPMHandler swig_types[157]
-static swig_type_info *swig_types[159];
-static swig_module_info swig_module = {swig_types, 158, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDCBrushChanger swig_types[37]
+#define SWIGTYPE_p_wxDCClipper swig_types[38]
+#define SWIGTYPE_p_wxDCOverlay swig_types[39]
+#define SWIGTYPE_p_wxDCPenChanger swig_types[40]
+#define SWIGTYPE_p_wxDCTextColourChanger swig_types[41]
+#define SWIGTYPE_p_wxDash swig_types[42]
+#define SWIGTYPE_p_wxDateEvent swig_types[43]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[44]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[45]
+#define SWIGTYPE_p_wxDuplexMode swig_types[46]
+#define SWIGTYPE_p_wxEffects swig_types[47]
+#define SWIGTYPE_p_wxEncodingConverter swig_types[48]
+#define SWIGTYPE_p_wxEraseEvent swig_types[49]
+#define SWIGTYPE_p_wxEvent swig_types[50]
+#define SWIGTYPE_p_wxEvtHandler swig_types[51]
+#define SWIGTYPE_p_wxFSFile swig_types[52]
+#define SWIGTYPE_p_wxFileSystem swig_types[53]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[54]
+#define SWIGTYPE_p_wxFocusEvent swig_types[55]
+#define SWIGTYPE_p_wxFont swig_types[56]
+#define SWIGTYPE_p_wxFontList swig_types[57]
+#define SWIGTYPE_p_wxFontMapper swig_types[58]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[59]
+#define SWIGTYPE_p_wxGCDC swig_types[60]
+#define SWIGTYPE_p_wxGDIObjListBase swig_types[61]
+#define SWIGTYPE_p_wxGDIObject swig_types[62]
+#define SWIGTYPE_p_wxGIFHandler swig_types[63]
+#define SWIGTYPE_p_wxGraphicsBrush swig_types[64]
+#define SWIGTYPE_p_wxGraphicsContext swig_types[65]
+#define SWIGTYPE_p_wxGraphicsFont swig_types[66]
+#define SWIGTYPE_p_wxGraphicsMatrix swig_types[67]
+#define SWIGTYPE_p_wxGraphicsObject swig_types[68]
+#define SWIGTYPE_p_wxGraphicsPath swig_types[69]
+#define SWIGTYPE_p_wxGraphicsPen swig_types[70]
+#define SWIGTYPE_p_wxGraphicsRenderer swig_types[71]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[72]
+#define SWIGTYPE_p_wxGridSizer swig_types[73]
+#define SWIGTYPE_p_wxHeaderButtonParams swig_types[74]
+#define SWIGTYPE_p_wxICOHandler swig_types[75]
+#define SWIGTYPE_p_wxIcon swig_types[76]
+#define SWIGTYPE_p_wxIconBundle swig_types[77]
+#define SWIGTYPE_p_wxIconLocation swig_types[78]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[79]
+#define SWIGTYPE_p_wxIdleEvent swig_types[80]
+#define SWIGTYPE_p_wxImage swig_types[81]
+#define SWIGTYPE_p_wxImageHandler swig_types[82]
+#define SWIGTYPE_p_wxImageList swig_types[83]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[84]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[85]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[86]
+#define SWIGTYPE_p_wxKeyEvent swig_types[87]
+#define SWIGTYPE_p_wxLanguageInfo swig_types[88]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[89]
+#define SWIGTYPE_p_wxLocale swig_types[90]
+#define SWIGTYPE_p_wxMask swig_types[91]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[92]
+#define SWIGTYPE_p_wxMemoryDC swig_types[93]
+#define SWIGTYPE_p_wxMenu swig_types[94]
+#define SWIGTYPE_p_wxMenuBar swig_types[95]
+#define SWIGTYPE_p_wxMenuEvent swig_types[96]
+#define SWIGTYPE_p_wxMenuItem swig_types[97]
+#define SWIGTYPE_p_wxMetaFile swig_types[98]
+#define SWIGTYPE_p_wxMetaFileDC swig_types[99]
+#define SWIGTYPE_p_wxMirrorDC swig_types[100]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[101]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[102]
+#define SWIGTYPE_p_wxMouseEvent swig_types[103]
+#define SWIGTYPE_p_wxMoveEvent swig_types[104]
+#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[105]
+#define SWIGTYPE_p_wxNativeFontInfo swig_types[106]
+#define SWIGTYPE_p_wxNativePixelData swig_types[107]
+#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[108]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[109]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[110]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[111]
+#define SWIGTYPE_p_wxObject swig_types[112]
+#define SWIGTYPE_p_wxOverlay swig_types[113]
+#define SWIGTYPE_p_wxPCXHandler swig_types[114]
+#define SWIGTYPE_p_wxPNGHandler swig_types[115]
+#define SWIGTYPE_p_wxPNMHandler swig_types[116]
+#define SWIGTYPE_p_wxPaintDC swig_types[117]
+#define SWIGTYPE_p_wxPaintEvent swig_types[118]
+#define SWIGTYPE_p_wxPalette swig_types[119]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[120]
+#define SWIGTYPE_p_wxPaperSize swig_types[121]
+#define SWIGTYPE_p_wxPen swig_types[122]
+#define SWIGTYPE_p_wxPenList swig_types[123]
+#define SWIGTYPE_p_wxPixelDataBase swig_types[124]
+#define SWIGTYPE_p_wxPoint swig_types[125]
+#define SWIGTYPE_p_wxPoint2D swig_types[126]
+#define SWIGTYPE_p_wxPoint2DDouble swig_types[127]
+#define SWIGTYPE_p_wxPostScriptDC swig_types[128]
+#define SWIGTYPE_p_wxPrintData swig_types[129]
+#define SWIGTYPE_p_wxPrinterDC swig_types[130]
+#define SWIGTYPE_p_wxPseudoDC swig_types[131]
+#define SWIGTYPE_p_wxPyApp swig_types[132]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[133]
+#define SWIGTYPE_p_wxPyEvent swig_types[134]
+#define SWIGTYPE_p_wxPyFontEnumerator swig_types[135]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[136]
+#define SWIGTYPE_p_wxPyLocale swig_types[137]
+#define SWIGTYPE_p_wxPySizer swig_types[138]
+#define SWIGTYPE_p_wxPyValidator swig_types[139]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[140]
+#define SWIGTYPE_p_wxRect swig_types[141]
+#define SWIGTYPE_p_wxRect2DDouble swig_types[142]
+#define SWIGTYPE_p_wxRegion swig_types[143]
+#define SWIGTYPE_p_wxRegionIterator swig_types[144]
+#define SWIGTYPE_p_wxRendererNative swig_types[145]
+#define SWIGTYPE_p_wxRendererVersion swig_types[146]
+#define SWIGTYPE_p_wxScreenDC swig_types[147]
+#define SWIGTYPE_p_wxScrollEvent swig_types[148]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[149]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[150]
+#define SWIGTYPE_p_wxShowEvent swig_types[151]
+#define SWIGTYPE_p_wxSize swig_types[152]
+#define SWIGTYPE_p_wxSizeEvent swig_types[153]
+#define SWIGTYPE_p_wxSizer swig_types[154]
+#define SWIGTYPE_p_wxSizerItem swig_types[155]
+#define SWIGTYPE_p_wxSplitterRenderParams swig_types[156]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[157]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[158]
+#define SWIGTYPE_p_wxStockGDI swig_types[159]
+#define SWIGTYPE_p_wxString swig_types[160]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[161]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[162]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[163]
+#define SWIGTYPE_p_wxValidator swig_types[164]
+#define SWIGTYPE_p_wxWindow swig_types[165]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[166]
+#define SWIGTYPE_p_wxWindowDC swig_types[167]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[168]
+#define SWIGTYPE_p_wxXPMHandler swig_types[169]
+static swig_type_info *swig_types[171];
+static swig_module_info swig_module = {swig_types, 170, 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)
 
@@ -3563,104 +3575,253 @@ static void wxDC_GetBoundingBox(wxDC* dc, int* x1, int* y1, int* x2, int* y2) {
 
 
 #if !wxUSE_GRAPHICS_CONTEXT
-// C++ stub classes for platforms that don't have wxGraphicsContext yet.
+// C++ stub classes for platforms or build configurations that don't have
+// wxGraphicsContext yet.
 
-class wxGraphicsPath
+
+class wxGraphicsObject : public wxObject
 {
 public :
-    wxGraphicsPath() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    wxGraphicsObject( wxGraphicsRenderer*  ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsObject is not available on this platform.");
+    }
+    wxGraphicsObject( const wxGraphicsObject&  ) {}
+    virtual ~wxGraphicsObject() {}
+    bool IsNull() const { return false; }
+    wxGraphicsRenderer* GetRenderer() const { return NULL; }
+} ;
+
+
+
+class wxGraphicsPen : public wxGraphicsObject
+{
+    wxGraphicsPen()  {}
+    virtual ~wxGraphicsPen() {}
+} ;
+wxGraphicsPen wxNullGraphicsPen;
+
+
+
+class wxGraphicsBrush : public wxGraphicsObject
+{
+public :
+    wxGraphicsBrush() {}
+    virtual ~wxGraphicsBrush() {}
+} ;
+wxGraphicsBrush wxNullGraphicsBrush;
+
+
+
+class wxGraphicsFont : public wxGraphicsObject
+{
+public :
+    wxGraphicsFont() {}
+    virtual ~wxGraphicsFont() {}
+} ;
+wxGraphicsFont wxNullGraphicsFont;
+
+
+
+class wxGraphicsPath : public wxGraphicsObject
+{
+public :
+    wxGraphicsPath(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsPath is not available on this platform.");
     }
     virtual ~wxGraphicsPath() {}
-    
+
+    virtual wxGraphicsPath *Clone() const { return NULL; }
+
     void MoveToPoint( wxDouble, wxDouble ) {}
-    void AddLineToPoint( wxDouble, wxDouble ) {} 
+    void MoveToPoint( const wxPoint2DDouble& ) {}
+    void AddLineToPoint( wxDouble, wxDouble ) {}
+    void AddLineToPoint( const wxPoint2DDouble& ) {}
     void AddCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, wxDouble ) {}
+    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
+    void AddPath( const wxGraphicsPath* ) {}
     void CloseSubpath() {}
     void GetCurrentPoint( wxDouble&, wxDouble&) {}
+    wxPoint2DDouble GetCurrentPoint() { reutrn wxPoint2D(0,0); }
     void AddArc( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, bool ) {}
+    void AddArc( const wxPoint2DDouble& , wxDouble, wxDouble , wxDouble , bool ) {}
 
     void AddQuadCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddRectangle( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddCircle( wxDouble, wxDouble, wxDouble ) {}
     void AddArcToPoint( wxDouble, wxDouble , wxDouble, wxDouble, wxDouble )  {}
 
-    wxPoint2DDouble GetCurrentPoint() { return wxPoint2DDouble(0,0); }
-    void MoveToPoint( const wxPoint2DDouble& ) {}
-    void AddLineToPoint( const wxPoint2DDouble&) {}
-    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
-    void AddArc( const wxPoint2DDouble&, wxDouble, wxDouble, wxDouble, bool) {}
+    void AddEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void AddRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void * GetNativePath() const { return NULL; }
+    void UnGetNativePath(void *) {}
+    void Transform( wxGraphicsMatrix* ) {}
+    void GetBox(wxDouble *, wxDouble *, wxDouble *, wxDouble *) {}
+    wxRect2D GetBox() { return wxRect2D(0,0,0,0); }
+
+    bool Contains( wxDouble , wxDouble , int ) { return false; }
+    bool Contains( const wxPoint2DDouble& , int ) { return false; }
+};
+
+
+class wxGraphicsMatrix : public wxGraphicsObject
+{
+public :
+    wxGraphicsMatrix(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "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 ,
+                     wxDouble , wxDouble ) {}
+    virtual void Invert() {}
+    virtual bool IsEqual( const wxGraphicsMatrix* t) const  {}
+    virtual bool IsIdentity() { return false; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble  ) {}
+    virtual void Rotate( wxDouble  ) {}
+    virtual void TransformPoint( wxDouble *, wxDouble * ) {}
+    virtual void TransformDistance( wxDouble *, wxDouble * ) {}
+    virtual void * GetNativeMatrix() const { return NULL; }
 };
 
 
-class wxGraphicsContext
+
+class wxGraphicsContext : public wxGraphicsObject
 {
 public:
-    wxGraphicsContext() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    wxGraphicsContext(wxGraphicsRenderer* ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsContext is not available on this platform.");
     }
+
     virtual ~wxGraphicsContext() {}
-    
-    static wxGraphicsContext* Create( const wxWindowDC&) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    static wxGraphicsContext* Create( const wxWindowDC& )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
+                        "wx.GraphicsContext is not available on this platform.");
     }
 
-    static wxGraphicsContext* CreateFromNative( void *  ) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    static wxGraphicsContext* CreateFromNative( void *  )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
-    }        
+                        "wx.GraphicsContext is not available on this platform.");
+    }
 
-    wxGraphicsPath * CreatePath() { return NULL; }
-    void PushState() {}
-    void PopState() {}
-    void Clip( const wxRegion & ) {}
-    void Clip( wxDouble, wxDouble, wxDouble, wxDouble ) {}
-    void ResetClip() {}
-    void * GetNativeContext() { return NULL; }
-    void Translate( wxDouble  , wxDouble  ) {}
-    void Scale( wxDouble  , wxDouble  ) {}
-    void Rotate( wxDouble  ) {}
-    void SetPen( const wxPen & ) {}
-    void SetBrush( const wxBrush & ) {}
-    void SetLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , 
-        const wxColour&, const wxColour&) {}
-    void SetRadialGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
-        const wxColour &, const wxColour &) {}
-    void SetFont( const wxFont & ) {}
-    void SetTextColour( const wxColour & ) {}
-    void StrokePath( const wxGraphicsPath * ) {}
-    void FillPath( const wxGraphicsPath *, int  ) {}
-    void DrawPath( const wxGraphicsPath *, int  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble , wxDouble  ) {}
-    void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
-                        wxDouble *, wxDouble * ) const {}
-    void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const {}
-    void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
-    void DrawLines( size_t , const wxPoint2DDouble *, int  ) {}
-    void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void DrawEllipse( wxDouble , wxDouble,  wxDouble , wxDouble) {}
-    void DrawRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    static wxGraphicsContext* CreateFromNativeWindow( void *  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    static wxGraphicsContext* Create( wxWindow*  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return NULL; }
+
+    virtual wxGraphicsBrush CreateBrush(const wxBrush& ) { return NULL; }
+
+    virtual wxGraphicsBrush CreateLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                        const wxColour&, const wxColour&) { return NULL; }
+
+    virtual wxGraphicsBrush CreateRadialGradientBrush( wxDouble xo, wxDouble yo,
+                                                        wxDouble xc, wxDouble yc, wxDouble radius,
+                                                        const wxColour &oColor, const wxColour &cColor) { return NULL; }
+
+    virtual wxGraphicsFont CreateFont( const wxFont &, const wxColour & )  { return NULL; }
+
+    virtual wxGraphicsMatrix* CreateMatrix( wxDouble, wxDouble, wxDouble, wxDouble,
+                                            wxDouble, wxDouble)  { return NULL; }
+
+    virtual void PushState() {}
+    virtual void PopState() {}
+    virtual void Clip( const wxRegion & ) {}
+    virtual void Clip( wxDouble , wxDouble , wxDouble , wxDouble  ) {}
+    virtual void ResetClip() {}
+    virtual void * GetNativeContext() { return NULL; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble ) {}
+    virtual void Rotate( wxDouble ) {}
+    virtual void ConcatTransform( const wxGraphicsMatrix* ) {}
+    virtual void SetTransform( const wxGraphicsMatrix* ) {}
+    virtual void GetTransform( wxGraphicsMatrix* ) {}
+
+    virtual void SetPen( const wxGraphicsPen& ) {}
+    void SetPen( const wxPen& ) {}
+
+    virtual void SetBrush( const wxGraphicsBrush& ) {}
+    void SetBrush( const wxBrush& ) {}
+
+    virtual void SetFont( const wxGraphicsFont& ) {}
+    void SetFont( const wxFont&, const wxColour& ) {}
+
+    virtual void StrokePath( const wxGraphicsPath * ) {}
+    virtual void FillPath( const wxGraphicsPath *, int ) {}
+    virtual void DrawPath( const wxGraphicsPath *, int ) {}
+
+    virtual void DrawText( const wxString &, wxDouble , wxDouble  )  {}
+    virtual void DrawText( const wxString &, wxDouble , wxDouble , wxDouble ) {}
+    virtual void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
+                                wxDouble *, wxDouble * ) const {}
+    virtual void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const  {}
+
+    virtual void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+    virtual void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+
+    virtual void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
+    virtual void DrawLines( size_t , const wxPoint2DDouble *, int ) {}
+    virtual void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawRoundedRectangle( wxDouble  wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual bool ShouldOffset() const { return false; }
+};
+
+
+class wxGraphicsRenderer : public wxObject
+{
+public :
+    wxGraphicsRenderer() {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    }
+
+    virtual ~wxGraphicsRenderer() {}
+
+    static wxGraphicsRenderer* GetDefaultRenderer(
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    );
+
+    virtual wxGraphicsContext * CreateContext( const wxWindowDC& ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeContext( void *  ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeWindow( void *  )  { return NULL; }
+    virtual wxGraphicsContext * CreateContext( wxWindow*  ) { return NULL; }
+
+    virtual wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsMatrix * CreateMatrix( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                             wxDouble , wxDouble ) { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return wxNullGaphicsPen; }
+    virtual wxGraphicsBrush CreateBrush(const wxBrush&  )  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateLinearGradientBrush(xDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour&, const wxColour&)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateRadialGradientBrush(wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour &, const wxColour &)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsFont CreateFont( const wxFont & , const wxColour & ) { return wxNullGaphicsFont; }
 };
 
 
+
 class wxGCDC: public wxWindowDC
 {
 public:
@@ -3670,14 +3831,14 @@ public:
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
      }
-    
+
     wxGCDC() {
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         PyErr_SetString(PyExc_NotImplementedError,
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
     }
-    
+
     virtual ~wxGCDC() {}
 
     wxGraphicsContext* GetGraphicsContext() { return NULL; }
@@ -23114,6 +23275,458 @@ SWIGINTERN PyObject *DC_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *_wrap_new_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxColour *arg2 = 0 ;
+  wxDCTextColourChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxColour temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCTextColourChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCTextColourChanger *)new wxDCTextColourChanger(*arg1,(wxColour const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCTextColourChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCTextColourChanger *arg1 = (wxDCTextColourChanger *) 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_wxDCTextColourChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDCTextColourChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCTextColourChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCTextColourChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCTextColourChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCTextColourChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxPen *arg2 = 0 ;
+  wxDCPenChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCPenChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCPenChanger *)new wxDCPenChanger(*arg1,(wxPen const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCPenChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCPenChanger *arg1 = (wxDCPenChanger *) 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_wxDCPenChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCPenChanger" "', expected argument " "1"" of type '" "wxDCPenChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCPenChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCPenChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCPenChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCPenChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxBrush *arg2 = 0 ;
+  wxDCBrushChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCBrushChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCBrushChanger *)new wxDCBrushChanger(*arg1,(wxBrush const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCBrushChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCBrushChanger *arg1 = (wxDCBrushChanger *) 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_wxDCBrushChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCBrushChanger" "', expected argument " "1"" of type '" "wxDCBrushChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCBrushChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCBrushChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCBrushChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCBrushChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRegion *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxRegion,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxRegion * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRegion const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRect *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_2(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  int arg2 ;
+  int arg3 ;
+  int arg4 ;
+  int arg5 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  int val5 ;
+  int ecode5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_DCClipper" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_DCClipper" "', expected argument " "4"" of type '" "int""'");
+  } 
+  arg4 = static_cast< int >(val4);
+  ecode5 = SWIG_AsVal_int(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_DCClipper" "', expected argument " "5"" of type '" "int""'");
+  } 
+  arg5 = static_cast< int >(val5);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,arg2,arg3,arg4,arg5);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"new_DCClipper",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxRegion, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_new_DCClipper__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_new_DCClipper__SWIG_1(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_new_DCClipper__SWIG_2(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'new_DCClipper'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCClipper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCClipper *arg1 = (wxDCClipper *) 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_wxDCClipper, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCClipper" "', expected argument " "1"" of type '" "wxDCClipper *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCClipper * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCClipper_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCClipper, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCClipper_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_MemoryDC(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxBitmap const &arg1_defvalue = wxNullBitmap ;
@@ -24466,6 +25079,328 @@ SWIGINTERN PyObject *PrinterDC_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) NULL ;
+  wxGraphicsObject *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "renderer", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|O:new_GraphicsObject",kwnames,&obj0)) SWIG_fail;
+  if (obj0) {
+    res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+    if (!SWIG_IsOK(res1)) {
+      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+    }
+    arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  }
+  {
+    result = (wxGraphicsObject *)new wxGraphicsObject(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsObject, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 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_wxGraphicsObject, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsObject *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_IsNull(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  bool 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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_IsNull" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (bool)((wxGraphicsObject const *)arg1)->IsNull();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_GetRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  wxGraphicsRenderer *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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_GetRenderer" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (wxGraphicsRenderer *)((wxGraphicsObject const *)arg1)->GetRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsObject_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsObject, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsObject_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsPen",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsPen *)new wxGraphicsPen();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *arg1 = (wxGraphicsPen *) 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_wxGraphicsPen, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPen" "', expected argument " "1"" of type '" "wxGraphicsPen *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPen * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsPen_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPen, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsPen_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsBrush",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsBrush *)new wxGraphicsBrush();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *arg1 = (wxGraphicsBrush *) 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_wxGraphicsBrush, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsBrush" "', expected argument " "1"" of type '" "wxGraphicsBrush *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsBrush * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsBrush_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsBrush, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsBrush_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsFont",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsFont *)new wxGraphicsFont();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *arg1 = (wxGraphicsFont *) 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_wxGraphicsFont, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsFont" "', expected argument " "1"" of type '" "wxGraphicsFont *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsFont * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsFont_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsFont, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -24492,7 +25427,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *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_wxGraphicsPath, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24503,25 +25464,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(sel
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_MoveToPoint",kwnames,&obj0,&obj1,&obj2)) 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_MoveToPoint" "', 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_MoveToPoint" "', 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_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -24537,7 +25492,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+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 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24548,25 +25551,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_AddLineToPoint",kwnames,&obj0,&obj1,&obj2)) 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_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_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_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -24582,7 +25579,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(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 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    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();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  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 (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  }
+  
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -24605,49 +25650,39 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *SWIGUNUSEDPARM
   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 *) "cx1",(char *) "cy1",(char *) "cx2",(char *) "cy2",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_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_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_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_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_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_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(obj6, &val7);
+  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""'");
   } 
@@ -24663,6 +25698,102 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
+  
+  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_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;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "path", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  {
+    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -24707,164 +25838,1689 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM
     result = (arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, 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_AddArc__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;
+  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 *""'"); 
+  }
+  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""'");
+  } 
+  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""'");
+  } 
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__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;
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(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_AddArc'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', 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_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);
+  {
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddRectangle" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 
+  };
+  
+  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 *""'"); 
+  }
+  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;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+  };
+  
+  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 '" "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)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddEllipse" "', 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;
+  }
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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] ;
+  
+  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 *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int res2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "p", NULL 
+  };
+  
+  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 '" "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)->UnGetNativePath(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 
+  };
+  
+  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 '" "GraphicsPath_Transform" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble 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 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (arg1)->GetBox();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 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 '" "GraphicsPath_Contains" "', 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""'");
+  } 
+  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);
+  }
+  {
+    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  int val3 ;
+  int ecode3 = 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 '" "GraphicsPath_Contains" "', 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;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
+  
+  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);
+  }
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  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) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(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 ;
+  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 ;
+  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 (!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 '" "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);
+  }
+  {
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    (arg1)->Invert();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 (!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 *""'"); 
+  }
+  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:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", 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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', 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_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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  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 (!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 '" "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)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "angle", NULL 
+  };
+  
+  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 '" "GraphicsMatrix_Rotate" "', 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_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  {
+    (arg1)->Rotate(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(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_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 '" "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);
+  }
+  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_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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindowDC *arg1 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindow *arg1 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindow * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[2];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
+  --argc;
+  if (argc == 1) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 1) {
+    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "context", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "window", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNativeWindow",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNativeWindow" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNativeWindow(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 *) "x",(char *) "y",(char *) "r",(char *) "startAngle",(char *) "endAngle",(char *) "clockwise", NULL 
+    (char *) "self",(char *) "pen", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddArc",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreatePen",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 '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    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(obj2, &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(obj3, &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(obj4, &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(obj5, &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(obj6, &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 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 
+    (char *) "self",(char *) "brush", 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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreateBrush",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 '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  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);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -24875,114 +27531,75 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(se
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-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 
-  };
-  
-  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 *""'"); 
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) 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_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);
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -24995,215 +27612,208 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    delete arg1;
-    
-    if (PyErr_Occurred()) SWIG_fail;
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
-  PyObject *resultobj = 0;
-  wxWindowDC *arg1 = 0 ;
-  wxGraphicsContext *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  
-  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  if (!argp1) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
   }
-  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
   {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxWindow *arg1 = (wxWindow *) 0 ;
-  wxGraphicsContext *result = 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
+  wxGraphicsMatrix *result = 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 ;
+  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 < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsContext_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxWindow * >(argp1);
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[2];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
-  --argc;
-  if (argc == 1) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
   }
-check_1:
-  
-  if (argc == 1) {
-    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
   }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  void *arg1 = (void *) 0 ;
-  wxGraphicsContext *result = 0 ;
-  int res1 ;
-  PyObject * obj0 = 0 ;
-  char *  kwnames[] = {
-    (char *) "context", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
   }
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -25539,7 +28149,41 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPen *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPen * >(argp2);
+  {
+    (arg1)->SetPen((wxGraphicsPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxPen *arg2 = 0 ;
@@ -25547,19 +28191,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self)
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "pen", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetPen",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPen,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
   }
@@ -25578,7 +28217,68 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetPen",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsPen, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetPen__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetPen__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetPen'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsBrush *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsBrush * >(argp2);
+  {
+    (arg1)->SetBrush((wxGraphicsBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxBrush *arg2 = 0 ;
@@ -25586,19 +28286,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(sel
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "brush", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetBrush",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
   }
@@ -25617,160 +28312,58 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxColour *arg6 = 0 ;
-  wxColour *arg7 = 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 ;
-  wxColour temp6 ;
-  wxColour temp7 ;
-  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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_SetLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_SetLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  {
-    arg6 = &temp6;
-    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
-  }
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetBrush",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsBrush, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetBrush__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetBrush__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetBrush'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxColour *arg7 = 0 ;
-  wxColour *arg8 = 0 ;
+  wxGraphicsFont *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 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  wxColour temp7 ;
-  wxColour temp8 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
-  PyObject * obj7 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColour",(char *) "cColour", NULL 
-  };
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_SetRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
-  {
-    arg8 = &temp8;
-    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsFont * >(argp2);
   {
-    (arg1)->SetRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
+    (arg1)->SetFont((wxGraphicsFont const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25780,27 +28373,25 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
   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 
-  };
+  wxColour temp3 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetFont",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  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_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxFont,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
@@ -25808,8 +28399,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
   arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (swig_obj[2]) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(swig_obj[2], &arg3)) SWIG_fail;
+    }
+  }
   {
-    (arg1)->SetFont((wxFont const &)*arg2);
+    (arg1)->SetFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -25819,36 +28416,29 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetTextColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxColour *arg2 = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  wxColour temp2 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "col", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTextColour",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_SetTextColour" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetFont",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsFont, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetFont__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetTextColour((wxColour const &)*arg2);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 2) && (argc <= 3)) {
+    return _wrap_GraphicsContext_SetFont__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetFont'");
   return NULL;
 }
 
@@ -26380,54 +28970,367 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawIcon(PyObject *SWIGUNUSEDPARM(sel
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 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 *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  {
+    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  {
+    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  PyObject *arg3 = (PyObject *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) 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_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg2 = obj1;
+  arg3 = obj2;
+  {
+    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  int arg4 = (int) wxWINDING_RULE ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) 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_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  if (obj2) {
+    ecode4 = SWIG_AsVal_int(obj2, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
-  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26437,13 +29340,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26454,43 +29358,51 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(s
   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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26500,137 +29412,283 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_ShouldOffset(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "points", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ShouldOffset" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    result = (bool)((wxGraphicsContext const *)arg1)->ShouldOffset();
+    if (PyErr_Occurred()) SWIG_fail;
   }
   {
-    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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_wxGraphicsRenderer, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsRenderer" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  {
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_GetDefaultRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"GraphicsRenderer_GetDefaultRenderer",0,0,0)) SWIG_fail;
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsRenderer *)wxGraphicsRenderer::GetDefaultRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindowDC *arg2 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindowDC * >(argp2);
+  {
+    result = (wxGraphicsContext *)(arg1)->CreateContext((wxWindowDC const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindow *arg2 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindow *""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindow * >(argp2);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsContext *)(arg1)->CreateContext(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsRenderer_CreateContext",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsRenderer_CreateContext'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  PyObject *arg2 = (PyObject *) 0 ;
-  PyObject *arg3 = (PyObject *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+    (char *) "self",(char *) "context", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeContext",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  arg2 = obj1;
-  arg3 = obj2;
   {
-    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeContext(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
-  int arg4 = (int) wxWINDING_RULE ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val4 ;
-  int ecode4 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+    (char *) "self",(char *) "window", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeWindow",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  if (obj2) {
-    ecode4 = SWIG_AsVal_int(obj2, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "2"" of type '" "void *""'"); 
   }
   {
-    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeWindow(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  {
-    if (arg3) delete [] arg3;
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxGraphicsPath *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_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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 ;
+  wxGraphicsMatrix *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26641,59 +29699,170 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPAR
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsRenderer_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreatePen",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateBrush",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26704,60 +29873,75 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsRenderer_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
+  }
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -26770,62 +29954,124 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUN
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsRenderer_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsRenderer_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
+  }
+  {
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsRenderer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsRenderer, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
@@ -35213,6 +38459,22 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"DC__DrawPolygonList", (PyCFunction) _wrap_DC__DrawPolygonList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC__DrawTextList", (PyCFunction) _wrap_DC__DrawTextList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC_swigregister", DC_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DCTextColourChanger", (PyCFunction) _wrap_new_DCTextColourChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCTextColourChanger", (PyCFunction)_wrap_delete_DCTextColourChanger, METH_O, NULL},
+        { (char *)"DCTextColourChanger_swigregister", DCTextColourChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCTextColourChanger_swiginit", DCTextColourChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCPenChanger", (PyCFunction) _wrap_new_DCPenChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCPenChanger", (PyCFunction)_wrap_delete_DCPenChanger, METH_O, NULL},
+        { (char *)"DCPenChanger_swigregister", DCPenChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCPenChanger_swiginit", DCPenChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCBrushChanger", (PyCFunction) _wrap_new_DCBrushChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCBrushChanger", (PyCFunction)_wrap_delete_DCBrushChanger, METH_O, NULL},
+        { (char *)"DCBrushChanger_swigregister", DCBrushChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCBrushChanger_swiginit", DCBrushChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCClipper", _wrap_new_DCClipper, METH_VARARGS, NULL},
+        { (char *)"delete_DCClipper", (PyCFunction)_wrap_delete_DCClipper, METH_O, NULL},
+        { (char *)"DCClipper_swigregister", DCClipper_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCClipper_swiginit", DCClipper_swiginit, METH_VARARGS, NULL},
         { (char *)"new_MemoryDC", (PyCFunction) _wrap_new_MemoryDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"new_MemoryDCFromDC", (PyCFunction) _wrap_new_MemoryDCFromDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"MemoryDC_SelectObject", (PyCFunction) _wrap_MemoryDC_SelectObject, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35271,22 +38533,71 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_PrinterDC", (PyCFunction) _wrap_new_PrinterDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"PrinterDC_swigregister", PrinterDC_swigregister, METH_VARARGS, NULL},
         { (char *)"PrinterDC_swiginit", PrinterDC_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsObject", (PyCFunction) _wrap_new_GraphicsObject, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_GraphicsObject", (PyCFunction)_wrap_delete_GraphicsObject, METH_O, NULL},
+        { (char *)"GraphicsObject_IsNull", (PyCFunction)_wrap_GraphicsObject_IsNull, METH_O, NULL},
+        { (char *)"GraphicsObject_GetRenderer", (PyCFunction)_wrap_GraphicsObject_GetRenderer, METH_O, NULL},
+        { (char *)"GraphicsObject_swigregister", GraphicsObject_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsObject_swiginit", GraphicsObject_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsPen", (PyCFunction)_wrap_new_GraphicsPen, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsPen", (PyCFunction)_wrap_delete_GraphicsPen, METH_O, NULL},
+        { (char *)"GraphicsPen_swigregister", GraphicsPen_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsPen_swiginit", GraphicsPen_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsBrush", (PyCFunction)_wrap_new_GraphicsBrush, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsBrush", (PyCFunction)_wrap_delete_GraphicsBrush, METH_O, NULL},
+        { (char *)"GraphicsBrush_swigregister", GraphicsBrush_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsBrush_swiginit", GraphicsBrush_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsFont", (PyCFunction)_wrap_new_GraphicsFont, METH_NOARGS, NULL},
+        { (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_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_MoveToPoint", (PyCFunction) _wrap_GraphicsPath_MoveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddLineToPoint", (PyCFunction) _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS | METH_KEYWORDS, 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},
+        { (char *)"GraphicsPath_AddPath", (PyCFunction) _wrap_GraphicsPath_AddPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_CloseSubpath", (PyCFunction)_wrap_GraphicsPath_CloseSubpath, METH_O, NULL},
         { (char *)"GraphicsPath_GetCurrentPoint", (PyCFunction)_wrap_GraphicsPath_GetCurrentPoint, METH_O, NULL},
-        { (char *)"GraphicsPath_AddArc", (PyCFunction) _wrap_GraphicsPath_AddArc, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddArc", _wrap_GraphicsPath_AddArc, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddQuadCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddQuadCurveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddRectangle", (PyCFunction) _wrap_GraphicsPath_AddRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddCircle", (PyCFunction) _wrap_GraphicsPath_AddCircle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddArcToPoint", (PyCFunction) _wrap_GraphicsPath_AddArcToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddEllipse", (PyCFunction) _wrap_GraphicsPath_AddEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddRoundedRectangle", (PyCFunction) _wrap_GraphicsPath_AddRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_GetNativePath", (PyCFunction)_wrap_GraphicsPath_GetNativePath, METH_O, NULL},
+        { (char *)"GraphicsPath_UnGetNativePath", (PyCFunction) _wrap_GraphicsPath_UnGetNativePath, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_Transform", (PyCFunction) _wrap_GraphicsPath_Transform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (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},
+        { (char *)"GraphicsContext_CreateFromNativeWindow", (PyCFunction) _wrap_GraphicsContext_CreateFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_CreatePath", (PyCFunction)_wrap_GraphicsContext_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsContext_CreatePen", (PyCFunction) _wrap_GraphicsContext_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateBrush", (PyCFunction) _wrap_GraphicsContext_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateFont", (PyCFunction) _wrap_GraphicsContext_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateMatrix", (PyCFunction) _wrap_GraphicsContext_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_PushState", (PyCFunction)_wrap_GraphicsContext_PushState, METH_O, NULL},
         { (char *)"GraphicsContext_PopState", (PyCFunction)_wrap_GraphicsContext_PopState, METH_O, NULL},
         { (char *)"GraphicsContext_ClipRegion", (PyCFunction) _wrap_GraphicsContext_ClipRegion, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35296,12 +38607,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_SetPen", (PyCFunction) _wrap_GraphicsContext_SetPen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetBrush", (PyCFunction) _wrap_GraphicsContext_SetBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetFont", (PyCFunction) _wrap_GraphicsContext_SetFont, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetTextColour", (PyCFunction) _wrap_GraphicsContext_SetTextColour, METH_VARARGS | METH_KEYWORDS, 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},
         { (char *)"GraphicsContext_StrokePath", (PyCFunction) _wrap_GraphicsContext_StrokePath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_FillPath", (PyCFunction) _wrap_GraphicsContext_FillPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawPath", (PyCFunction) _wrap_GraphicsContext_DrawPath, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -35319,7 +38627,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_DrawRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawEllipse", (PyCFunction) _wrap_GraphicsContext_DrawEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawRoundedRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ShouldOffset", (PyCFunction)_wrap_GraphicsContext_ShouldOffset, METH_O, NULL},
         { (char *)"GraphicsContext_swigregister", GraphicsContext_swigregister, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsRenderer", (PyCFunction)_wrap_delete_GraphicsRenderer, METH_O, NULL},
+        { (char *)"GraphicsRenderer_GetDefaultRenderer", (PyCFunction)_wrap_GraphicsRenderer_GetDefaultRenderer, METH_NOARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContext", _wrap_GraphicsRenderer_CreateContext, METH_VARARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeContext", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeContext, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeWindow", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePath", (PyCFunction)_wrap_GraphicsRenderer_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsRenderer_CreateMatrix", (PyCFunction) _wrap_GraphicsRenderer_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePen", (PyCFunction) _wrap_GraphicsRenderer_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateFont", (PyCFunction) _wrap_GraphicsRenderer_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_swigregister", GraphicsRenderer_swigregister, METH_VARARGS, NULL},
         { (char *)"new_GCDC", (PyCFunction) _wrap_new_GCDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_GCDC", (PyCFunction)_wrap_delete_GCDC, METH_O, NULL},
         { (char *)"GCDC_GetGraphicsContext", (PyCFunction)_wrap_GCDC_GetGraphicsContext, METH_O, NULL},
@@ -35550,6 +38872,24 @@ static void *_p_wxPaintDCTo_p_wxWindowDC(void *x) {
 static void *_p_wxPyLocaleTo_p_wxLocale(void *x) {
     return (void *)((wxLocale *)  ((wxPyLocale *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPen *) x));
+}
+static void *_p_wxGraphicsBrushTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsMatrixTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsMatrix *) x));
+}
+static void *_p_wxGraphicsFontTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsFont *) x));
+}
+static void *_p_wxGraphicsContextTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsContext *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPath *) x));
+}
 static void *_p_wxIconTo_p_wxGDIObject(void *x) {
     return (void *)((wxGDIObject *)  ((wxIcon *) x));
 }
@@ -35706,6 +39046,9 @@ static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
 static void *_p_wxControlTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPen *) x));
+}
 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
 }
@@ -35730,6 +39073,12 @@ static void *_p_wxWindowDCTo_p_wxObject(void *x) {
 static void *_p_wxGDIObjectTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxGDIObject *) x));
 }
+static void *_p_wxGraphicsObjectTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsObject *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPath *) x));
+}
 static void *_p_wxEffectsTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxEffects *) x));
 }
@@ -35742,6 +39091,9 @@ static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
 static void *_p_wxPostScriptDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxPostScriptDC *) x));
 }
+static void *_p_wxGraphicsContextTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsContext *) x));
+}
 static void *_p_wxShowEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
 }
@@ -35847,6 +39199,12 @@ static void *_p_wxImageTo_p_wxObject(void *x) {
 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
 }
+static void *_p_wxGraphicsBrushTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsRendererTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsRenderer *) x));
+}
 static void *_p_wxPaletteTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxGDIObject *) ((wxPalette *) x));
 }
@@ -35868,6 +39226,9 @@ static void *_p_wxEncodingConverterTo_p_wxObject(void *x) {
 static void *_p_wxMirrorDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxMirrorDC *) x));
 }
+static void *_p_wxGraphicsFontTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsFont *) x));
+}
 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
 }
@@ -35898,6 +39259,9 @@ static void *_p_wxBitmapTo_p_wxObject(void *x) {
 static void *_p_wxMaskTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxMask *) x));
 }
+static void *_p_wxGraphicsMatrixTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsMatrix *) x));
+}
 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
 }
@@ -35991,7 +39355,11 @@ static swig_type_info _swigt__p_wxColour = {"_p_wxColour", "wxColour *", 0, 0, (
 static swig_type_info _swigt__p_wxColourDatabase = {"_p_wxColourDatabase", "wxColourDatabase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxCursor = {"_p_wxCursor", "wxCursor *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCBrushChanger = {"_p_wxDCBrushChanger", "wxDCBrushChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCClipper = {"_p_wxDCClipper", "wxDCClipper *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDCOverlay = {"_p_wxDCOverlay", "wxDCOverlay *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCPenChanger = {"_p_wxDCPenChanger", "wxDCPenChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCTextColourChanger = {"_p_wxDCTextColourChanger", "wxDCTextColourChanger *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDash = {"_p_wxDash", "wxDash *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEffects = {"_p_wxEffects", "wxEffects *", 0, 0, (void*)0, 0};
@@ -36002,8 +39370,14 @@ static swig_type_info _swigt__p_wxFontMapper = {"_p_wxFontMapper", "wxFontMapper
 static swig_type_info _swigt__p_wxGCDC = {"_p_wxGCDC", "wxGCDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObjListBase = {"_p_wxGDIObjListBase", "wxGDIObjListBase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObject = {"_p_wxGDIObject", "wxGDIObject *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsBrush = {"_p_wxGraphicsBrush", "wxGraphicsBrush *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsContext = {"_p_wxGraphicsContext", "wxGraphicsContext *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsFont = {"_p_wxGraphicsFont", "wxGraphicsFont *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsMatrix = {"_p_wxGraphicsMatrix", "wxGraphicsMatrix *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsObject = {"_p_wxGraphicsObject", "wxGraphicsObject *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsPath = {"_p_wxGraphicsPath", "wxGraphicsPath *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsPen = {"_p_wxGraphicsPen", "wxGraphicsPen *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsRenderer = {"_p_wxGraphicsRenderer", "wxGraphicsRenderer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxHeaderButtonParams = {"_p_wxHeaderButtonParams", "wxHeaderButtonParams *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIcon = {"_p_wxIcon", "wxIcon *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIconBundle = {"_p_wxIconBundle", "wxIconBundle *", 0, 0, (void*)0, 0};
@@ -36061,13 +39435,13 @@ static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0,
 static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0, 0};
@@ -36107,6 +39481,7 @@ static swig_type_info _swigt__p_wxPenList = {"_p_wxPenList", "wxPenList *", 0, 0
 static swig_type_info _swigt__p_wxPixelDataBase = {"_p_wxPixelDataBase", "wxPixelDataBase *", 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_wxPoint2D = {"_p_wxPoint2D", "wxPoint2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPoint2DDouble = {"_p_wxPoint2DDouble", "wxPoint2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPostScriptDC = {"_p_wxPostScriptDC", "wxPostScriptDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrintData = {"_p_wxPrintData", "wxPrintData *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrinterDC = {"_p_wxPrinterDC", "wxPrinterDC *", 0, 0, (void*)0, 0};
@@ -36114,6 +39489,7 @@ static swig_type_info _swigt__p_wxPseudoDC = {"_p_wxPseudoDC", "wxPseudoDC *", 0
 static swig_type_info _swigt__p_wxPyFontEnumerator = {"_p_wxPyFontEnumerator", "wxPyFontEnumerator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyLocale = {"_p_wxPyLocale", "wxPyLocale *", 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_wxRect2DDouble = {"_p_wxRect2DDouble", "wxRect2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegionIterator = {"_p_wxRegionIterator", "wxRegionIterator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRendererNative = {"_p_wxRendererNative", "wxRendererNative *", 0, 0, (void*)0, 0};
@@ -36164,7 +39540,11 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxControlWithItems,
   &_swigt__p_wxCursor,
   &_swigt__p_wxDC,
+  &_swigt__p_wxDCBrushChanger,
+  &_swigt__p_wxDCClipper,
   &_swigt__p_wxDCOverlay,
+  &_swigt__p_wxDCPenChanger,
+  &_swigt__p_wxDCTextColourChanger,
   &_swigt__p_wxDash,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDisplayChangedEvent,
@@ -36187,8 +39567,14 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxGDIObjListBase,
   &_swigt__p_wxGDIObject,
   &_swigt__p_wxGIFHandler,
+  &_swigt__p_wxGraphicsBrush,
   &_swigt__p_wxGraphicsContext,
+  &_swigt__p_wxGraphicsFont,
+  &_swigt__p_wxGraphicsMatrix,
+  &_swigt__p_wxGraphicsObject,
   &_swigt__p_wxGraphicsPath,
+  &_swigt__p_wxGraphicsPen,
+  &_swigt__p_wxGraphicsRenderer,
   &_swigt__p_wxGridBagSizer,
   &_swigt__p_wxGridSizer,
   &_swigt__p_wxHeaderButtonParams,
@@ -36244,6 +39630,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPixelDataBase,
   &_swigt__p_wxPoint,
   &_swigt__p_wxPoint2D,
+  &_swigt__p_wxPoint2DDouble,
   &_swigt__p_wxPostScriptDC,
   &_swigt__p_wxPrintData,
   &_swigt__p_wxPrinterDC,
@@ -36258,6 +39645,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyValidator,
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2DDouble,
   &_swigt__p_wxRegion,
   &_swigt__p_wxRegionIterator,
   &_swigt__p_wxRendererNative,
@@ -36311,7 +39699,11 @@ static swig_cast_info _swigc__p_wxColour[] = {  {&_swigt__p_wxColour, 0, 0, 0},{
 static swig_cast_info _swigc__p_wxColourDatabase[] = {  {&_swigt__p_wxColourDatabase, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCursor[] = {  {&_swigt__p_wxCursor, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxDC, 0, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxDC, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCBrushChanger[] = {  {&_swigt__p_wxDCBrushChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCClipper[] = {  {&_swigt__p_wxDCClipper, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDCOverlay[] = {  {&_swigt__p_wxDCOverlay, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCPenChanger[] = {  {&_swigt__p_wxDCPenChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCTextColourChanger[] = {  {&_swigt__p_wxDCTextColourChanger, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDash[] = {  {&_swigt__p_wxDash, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEffects[] = {  {&_swigt__p_wxEffects, 0, 0, 0},{0, 0, 0, 0}};
@@ -36322,8 +39714,14 @@ static swig_cast_info _swigc__p_wxFontMapper[] = {  {&_swigt__p_wxFontMapper, 0,
 static swig_cast_info _swigc__p_wxGCDC[] = {  {&_swigt__p_wxGCDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObjListBase[] = {  {&_swigt__p_wxGDIObjListBase, 0, 0, 0},  {&_swigt__p_wxBrushList, _p_wxBrushListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxFontList, _p_wxFontListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxPenList, _p_wxPenListTo_p_wxGDIObjListBase, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObject[] = {  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxGDIObject, 0, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxGDIObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsBrush[] = {  {&_swigt__p_wxGraphicsBrush, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsContext[] = {  {&_swigt__p_wxGraphicsContext, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsFont[] = {  {&_swigt__p_wxGraphicsFont, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsMatrix[] = {  {&_swigt__p_wxGraphicsMatrix, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsObject[] = {  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsObject, 0, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxGraphicsObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsPath[] = {  {&_swigt__p_wxGraphicsPath, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsPen[] = {  {&_swigt__p_wxGraphicsPen, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsRenderer[] = {  {&_swigt__p_wxGraphicsRenderer, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxHeaderButtonParams[] = {  {&_swigt__p_wxHeaderButtonParams, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIcon[] = {  {&_swigt__p_wxIcon, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIconBundle[] = {  {&_swigt__p_wxIconBundle, 0, 0, 0},{0, 0, 0, 0}};
@@ -36380,13 +39778,13 @@ static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent,
 static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEvtHandler[] = {{&_swigt__p_wxEvtHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
@@ -36417,7 +39815,7 @@ static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusE
 static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsObject, _p_wxGraphicsObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsRenderer, _p_wxGraphicsRendererTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxOverlay[] = {  {&_swigt__p_wxOverlay, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPaintDC[] = {  {&_swigt__p_wxPaintDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPalette[] = {  {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
@@ -36427,6 +39825,7 @@ static swig_cast_info _swigc__p_wxPenList[] = {  {&_swigt__p_wxPenList, 0, 0, 0}
 static swig_cast_info _swigc__p_wxPixelDataBase[] = {  {&_swigt__p_wxPixelDataBase, 0, 0, 0},  {&_swigt__p_wxNativePixelData, _p_wxNativePixelDataTo_p_wxPixelDataBase, 0, 0},  {&_swigt__p_wxAlphaPixelData, _p_wxAlphaPixelDataTo_p_wxPixelDataBase, 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_wxPoint2D[] = {  {&_swigt__p_wxPoint2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPoint2DDouble[] = {  {&_swigt__p_wxPoint2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPostScriptDC[] = {  {&_swigt__p_wxPostScriptDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrintData[] = {  {&_swigt__p_wxPrintData, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrinterDC[] = {  {&_swigt__p_wxPrinterDC, 0, 0, 0},{0, 0, 0, 0}};
@@ -36434,6 +39833,7 @@ static swig_cast_info _swigc__p_wxPseudoDC[] = {  {&_swigt__p_wxPseudoDC, 0, 0,
 static swig_cast_info _swigc__p_wxPyFontEnumerator[] = {  {&_swigt__p_wxPyFontEnumerator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyLocale[] = {  {&_swigt__p_wxPyLocale, 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_wxRect2DDouble[] = {  {&_swigt__p_wxRect2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegionIterator[] = {  {&_swigt__p_wxRegionIterator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRendererNative[] = {  {&_swigt__p_wxRendererNative, 0, 0, 0},{0, 0, 0, 0}};
@@ -36484,7 +39884,11 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxControlWithItems,
   _swigc__p_wxCursor,
   _swigc__p_wxDC,
+  _swigc__p_wxDCBrushChanger,
+  _swigc__p_wxDCClipper,
   _swigc__p_wxDCOverlay,
+  _swigc__p_wxDCPenChanger,
+  _swigc__p_wxDCTextColourChanger,
   _swigc__p_wxDash,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDisplayChangedEvent,
@@ -36507,8 +39911,14 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxGDIObjListBase,
   _swigc__p_wxGDIObject,
   _swigc__p_wxGIFHandler,
+  _swigc__p_wxGraphicsBrush,
   _swigc__p_wxGraphicsContext,
+  _swigc__p_wxGraphicsFont,
+  _swigc__p_wxGraphicsMatrix,
+  _swigc__p_wxGraphicsObject,
   _swigc__p_wxGraphicsPath,
+  _swigc__p_wxGraphicsPen,
+  _swigc__p_wxGraphicsRenderer,
   _swigc__p_wxGridBagSizer,
   _swigc__p_wxGridSizer,
   _swigc__p_wxHeaderButtonParams,
@@ -36564,6 +39974,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPixelDataBase,
   _swigc__p_wxPoint,
   _swigc__p_wxPoint2D,
+  _swigc__p_wxPoint2DDouble,
   _swigc__p_wxPostScriptDC,
   _swigc__p_wxPrintData,
   _swigc__p_wxPrinterDC,
@@ -36578,6 +39989,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyValidator,
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2DDouble,
   _swigc__p_wxRegion,
   _swigc__p_wxRegionIterator,
   _swigc__p_wxRendererNative,
@@ -37491,6 +40903,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "PLATFORM_MAC",SWIG_From_int(static_cast< int >(wxPLATFORM_MAC)));
   SWIG_Python_SetConstant(d, "BUFFER_VIRTUAL_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_VIRTUAL_AREA)));
   SWIG_Python_SetConstant(d, "BUFFER_CLIENT_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_CLIENT_AREA)));
+  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
+  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_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)));
@@ -37533,7 +40949,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "StockGDI_PEN_TRANSPARENT",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "StockGDI_PEN_WHITE",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_WHITE)));
   SWIG_Python_SetConstant(d, "StockGDI_ITEMCOUNT",SWIG_From_int(static_cast< int >(wxStockGDI::ITEMCOUNT)));
-  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
   SWIG_addvarlink(SWIG_globals(),(char*)"NullBitmap",NullBitmap_get, NullBitmap_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullIcon",NullIcon_get, NullIcon_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullCursor",NullCursor_get, NullCursor_set);
index 8ad5e129eed71af94a2221d0f0ece6a1e13b8968..74cb59e11c4d525cdeb2e595608da7f5f1d98e84 100644 (file)
@@ -405,6 +405,10 @@ class TopLevelWindow(_core.Window):
         """GetTitle(self) -> String"""
         return _windows_.TopLevelWindow_GetTitle(*args, **kwargs)
 
+    def EnableCloseButton(*args, **kwargs):
+        """EnableCloseButton(self, bool enable) -> bool"""
+        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
+
     def SetShape(*args, **kwargs):
         """SetShape(self, Region region) -> bool"""
         return _windows_.TopLevelWindow_SetShape(*args, **kwargs)
@@ -434,10 +438,6 @@ class TopLevelWindow(_core.Window):
         return _windows_.TopLevelWindow_CenterOnScreen(*args, **kwargs)
 
     CentreOnScreen = CenterOnScreen 
-    def EnableCloseButton(*args, **kwargs):
-        """EnableCloseButton(self, bool enable=True) -> bool"""
-        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
-
     def GetDefaultItem(*args, **kwargs):
         """
         GetDefaultItem(self) -> Window
@@ -4383,6 +4383,54 @@ class Printout(_core.Object):
         """SetDC(self, DC dc)"""
         return _windows_.Printout_SetDC(*args, **kwargs)
 
+    def FitThisSizeToPaper(*args, **kwargs):
+        """FitThisSizeToPaper(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPaper(*args, **kwargs)
+
+    def FitThisSizeToPage(*args, **kwargs):
+        """FitThisSizeToPage(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPage(*args, **kwargs)
+
+    def FitThisSizeToPageMargins(*args, **kwargs):
+        """FitThisSizeToPageMargins(self, Size imageSize, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_FitThisSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToPaper(*args, **kwargs):
+        """MapScreenSizeToPaper(self)"""
+        return _windows_.Printout_MapScreenSizeToPaper(*args, **kwargs)
+
+    def MapScreenSizeToPage(*args, **kwargs):
+        """MapScreenSizeToPage(self)"""
+        return _windows_.Printout_MapScreenSizeToPage(*args, **kwargs)
+
+    def MapScreenSizeToPageMargins(*args, **kwargs):
+        """MapScreenSizeToPageMargins(self, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_MapScreenSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToDevice(*args, **kwargs):
+        """MapScreenSizeToDevice(self)"""
+        return _windows_.Printout_MapScreenSizeToDevice(*args, **kwargs)
+
+    def GetLogicalPaperRect(*args, **kwargs):
+        """GetLogicalPaperRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPaperRect(*args, **kwargs)
+
+    def GetLogicalPageRect(*args, **kwargs):
+        """GetLogicalPageRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPageRect(*args, **kwargs)
+
+    def GetLogicalPageMarginsRect(*args, **kwargs):
+        """GetLogicalPageMarginsRect(self, PageSetupDialogData pageSetupData) -> Rect"""
+        return _windows_.Printout_GetLogicalPageMarginsRect(*args, **kwargs)
+
+    def SetLogicalOrigin(*args, **kwargs):
+        """SetLogicalOrigin(self, int x, int y)"""
+        return _windows_.Printout_SetLogicalOrigin(*args, **kwargs)
+
+    def OffsetLogicalOrigin(*args, **kwargs):
+        """OffsetLogicalOrigin(self, int xoff, int yoff)"""
+        return _windows_.Printout_OffsetLogicalOrigin(*args, **kwargs)
+
     def SetPageSizePixels(*args, **kwargs):
         """SetPageSizePixels(self, int w, int h)"""
         return _windows_.Printout_SetPageSizePixels(*args, **kwargs)
@@ -4415,6 +4463,14 @@ class Printout(_core.Object):
         """GetPPIPrinter() -> (x,y)"""
         return _windows_.Printout_GetPPIPrinter(*args, **kwargs)
 
+    def SetPaperRectPixels(*args, **kwargs):
+        """SetPaperRectPixels(self, Rect paperRectPixels)"""
+        return _windows_.Printout_SetPaperRectPixels(*args, **kwargs)
+
+    def GetPaperRectPixels(*args, **kwargs):
+        """GetPaperRectPixels(self) -> Rect"""
+        return _windows_.Printout_GetPaperRectPixels(*args, **kwargs)
+
     def IsPreview(*args, **kwargs):
         """IsPreview(self) -> bool"""
         return _windows_.Printout_IsPreview(*args, **kwargs)
index 38a8b63b624438f19a5e35a1e367fdc29140811e..b6651cc034d612f7d78e4c45d16f3a5d5b762ca9 100644 (file)
@@ -2828,7 +2828,6 @@ SWIGINTERN void wxTopLevelWindow_MacSetMetalAppearance(wxTopLevelWindow *self,bo
                 style &= ~wxFRAME_EX_METAL;
             self->SetExtraStyle(style);
         }
-SWIGINTERN bool wxTopLevelWindow_EnableCloseButton(wxTopLevelWindow *self,bool enable=true){ return false; }
 
 
 SWIGINTERN wxRect wxStatusBar_GetFieldRect(wxStatusBar *self,int i){
@@ -5826,6 +5825,47 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
+  bool arg2 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "enable", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
+  ecode2 = SWIG_AsVal_bool(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
+  } 
+  arg2 = static_cast< bool >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EnableCloseButton(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_TopLevelWindow_SetShape(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -6048,49 +6088,6 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
-  bool arg2 = (bool) true ;
-  bool result;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  bool val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "enable", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
-  }
-  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_bool(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
-    } 
-    arg2 = static_cast< bool >(val2);
-  }
-  {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)wxTopLevelWindow_EnableCloseButton(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
 SWIGINTERN PyObject *_wrap_TopLevelWindow_GetDefaultItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -27782,6 +27779,440 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPaper",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPaper((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPage",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPage((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  wxPageSetupDialogData *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_FitThisSizeToPageMargins",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp3) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg3 = reinterpret_cast< wxPageSetupDialogData * >(argp3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPageMargins((wxSize const &)*arg2,(wxPageSetupDialogData const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPaper();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPage();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *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 *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_MapScreenSizeToPageMargins",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPageMargins((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToDevice(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToDevice" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToDevice();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPaperRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPaperRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPaperRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageMarginsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *arg2 = 0 ;
+  wxRect result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_GetLogicalPageMarginsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageMarginsRect((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_SetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_SetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_OffsetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xoff",(char *) "yoff", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_OffsetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->OffsetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_SetPageSizePixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -28158,6 +28589,70 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_SetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "paperRectPixels", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_SetPaperRectPixels",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetPaperRectPixels((wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetPaperRectPixels();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_IsPreview(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -30849,13 +31344,13 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"TopLevelWindow_IsFullScreen", (PyCFunction)_wrap_TopLevelWindow_IsFullScreen, METH_O, NULL},
         { (char *)"TopLevelWindow_SetTitle", (PyCFunction) _wrap_TopLevelWindow_SetTitle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetTitle", (PyCFunction)_wrap_TopLevelWindow_GetTitle, METH_O, NULL},
+        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetShape", (PyCFunction) _wrap_TopLevelWindow_SetShape, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_RequestUserAttention", (PyCFunction) _wrap_TopLevelWindow_RequestUserAttention, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_IsActive", (PyCFunction)_wrap_TopLevelWindow_IsActive, METH_O, NULL},
         { (char *)"TopLevelWindow_MacSetMetalAppearance", (PyCFunction) _wrap_TopLevelWindow_MacSetMetalAppearance, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_MacGetMetalAppearance", (PyCFunction)_wrap_TopLevelWindow_MacGetMetalAppearance, METH_O, NULL},
         { (char *)"TopLevelWindow_CenterOnScreen", (PyCFunction) _wrap_TopLevelWindow_CenterOnScreen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetDefaultItem", (PyCFunction)_wrap_TopLevelWindow_GetDefaultItem, METH_O, NULL},
         { (char *)"TopLevelWindow_SetDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetTmpDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetTmpDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31462,6 +31957,18 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetTitle", (PyCFunction)_wrap_Printout_GetTitle, METH_O, NULL},
         { (char *)"Printout_GetDC", (PyCFunction)_wrap_Printout_GetDC, METH_O, NULL},
         { (char *)"Printout_SetDC", (PyCFunction) _wrap_Printout_SetDC, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPaper", (PyCFunction) _wrap_Printout_FitThisSizeToPaper, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPage", (PyCFunction) _wrap_Printout_FitThisSizeToPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPageMargins", (PyCFunction) _wrap_Printout_FitThisSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToPaper", (PyCFunction)_wrap_Printout_MapScreenSizeToPaper, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPage", (PyCFunction)_wrap_Printout_MapScreenSizeToPage, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPageMargins", (PyCFunction) _wrap_Printout_MapScreenSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToDevice", (PyCFunction)_wrap_Printout_MapScreenSizeToDevice, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPaperRect", (PyCFunction)_wrap_Printout_GetLogicalPaperRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageRect", (PyCFunction)_wrap_Printout_GetLogicalPageRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageMarginsRect", (PyCFunction) _wrap_Printout_GetLogicalPageMarginsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_SetLogicalOrigin", (PyCFunction) _wrap_Printout_SetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_OffsetLogicalOrigin", (PyCFunction) _wrap_Printout_OffsetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_SetPageSizePixels", (PyCFunction) _wrap_Printout_SetPageSizePixels, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPageSizePixels", (PyCFunction)_wrap_Printout_GetPageSizePixels, METH_O, NULL},
         { (char *)"Printout_SetPageSizeMM", (PyCFunction) _wrap_Printout_SetPageSizeMM, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31470,6 +31977,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetPPIScreen", (PyCFunction)_wrap_Printout_GetPPIScreen, METH_O, NULL},
         { (char *)"Printout_SetPPIPrinter", (PyCFunction) _wrap_Printout_SetPPIPrinter, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPPIPrinter", (PyCFunction)_wrap_Printout_GetPPIPrinter, METH_O, NULL},
+        { (char *)"Printout_SetPaperRectPixels", (PyCFunction) _wrap_Printout_SetPaperRectPixels, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_GetPaperRectPixels", (PyCFunction)_wrap_Printout_GetPaperRectPixels, METH_O, NULL},
         { (char *)"Printout_IsPreview", (PyCFunction)_wrap_Printout_IsPreview, METH_O, NULL},
         { (char *)"Printout_SetIsPreview", (PyCFunction) _wrap_Printout_SetIsPreview, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_OnBeginDocument", (PyCFunction) _wrap_Printout_OnBeginDocument, METH_VARARGS | METH_KEYWORDS, NULL},
index 54e6c6d6ef7587977fe31cb4c25c3de039eb3d81..592182271ca1f14c3293ffc0192aa5d8e855a244 100644 (file)
@@ -166,9 +166,10 @@ AUI_MGR_ALLOW_FLOATING = _aui.AUI_MGR_ALLOW_FLOATING
 AUI_MGR_ALLOW_ACTIVE_PANE = _aui.AUI_MGR_ALLOW_ACTIVE_PANE
 AUI_MGR_TRANSPARENT_DRAG = _aui.AUI_MGR_TRANSPARENT_DRAG
 AUI_MGR_TRANSPARENT_HINT = _aui.AUI_MGR_TRANSPARENT_HINT
-AUI_MGR_TRANSPARENT_HINT_FADE = _aui.AUI_MGR_TRANSPARENT_HINT_FADE
-AUI_MGR_DISABLE_VENETIAN_BLINDS = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS
-AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE
+AUI_MGR_VENETIAN_BLINDS_HINT = _aui.AUI_MGR_VENETIAN_BLINDS_HINT
+AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT
+AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE
+AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE
 AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT
 AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE
 AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE
index 53c30470bc11efdb8506e00b3c1f9af5587a0c03..1fcf370f69b5b10532c00a3a34c8012da0b06f78 100644 (file)
@@ -16268,9 +16268,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "AUI_MGR_ALLOW_ACTIVE_PANE",SWIG_From_int(static_cast< int >(wxAUI_MGR_ALLOW_ACTIVE_PANE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_DRAG",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_DRAG)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT_FADE)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_VENETIAN_BLINDS_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_VENETIAN_BLINDS_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_RECTANGLE_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_RECTANGLE_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT)));
   SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE)));
   SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE)));
index e5efed0aea44bc8473db180e6a35edbd6ea779b6..fd57a8316dc5bce650f7f0e2741954b6f6a4a472 100644 (file)
@@ -107,7 +107,6 @@ TEXT_ATTR_CHARACTER_STYLE_NAME = _richtext.TEXT_ATTR_CHARACTER_STYLE_NAME
 TEXT_ATTR_PARAGRAPH_STYLE_NAME = _richtext.TEXT_ATTR_PARAGRAPH_STYLE_NAME
 TEXT_ATTR_BULLET_STYLE = _richtext.TEXT_ATTR_BULLET_STYLE
 TEXT_ATTR_BULLET_NUMBER = _richtext.TEXT_ATTR_BULLET_NUMBER
-TEXT_ATTR_BULLET_SYMBOL = _richtext.TEXT_ATTR_BULLET_SYMBOL
 TEXT_ATTR_BULLET_STYLE_NONE = _richtext.TEXT_ATTR_BULLET_STYLE_NONE
 TEXT_ATTR_BULLET_STYLE_ARABIC = _richtext.TEXT_ATTR_BULLET_STYLE_ARABIC
 TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER = _richtext.TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER
@@ -368,9 +367,9 @@ class RichTextAttr(object):
         """SetBulletNumber(self, int n)"""
         return _richtext.RichTextAttr_SetBulletNumber(*args, **kwargs)
 
-    def SetBulletSymbol(*args, **kwargs):
-        """SetBulletSymbol(self, wxChar symbol)"""
-        return _richtext.RichTextAttr_SetBulletSymbol(*args, **kwargs)
+    def SetBulletText(*args, **kwargs):
+        """SetBulletText(self, wxChar symbol)"""
+        return _richtext.RichTextAttr_SetBulletText(*args, **kwargs)
 
     def SetBulletFont(*args, **kwargs):
         """SetBulletFont(self, String bulletFont)"""
@@ -456,9 +455,9 @@ class RichTextAttr(object):
         """GetBulletNumber(self) -> int"""
         return _richtext.RichTextAttr_GetBulletNumber(*args, **kwargs)
 
-    def GetBulletSymbol(*args, **kwargs):
-        """GetBulletSymbol(self) -> wxChar"""
-        return _richtext.RichTextAttr_GetBulletSymbol(*args, **kwargs)
+    def GetBulletText(*args, **kwargs):
+        """GetBulletText(self) -> String"""
+        return _richtext.RichTextAttr_GetBulletText(*args, **kwargs)
 
     def GetBulletFont(*args, **kwargs):
         """GetBulletFont(self) -> String"""
@@ -540,9 +539,9 @@ class RichTextAttr(object):
         """HasBulletNumber(self) -> bool"""
         return _richtext.RichTextAttr_HasBulletNumber(*args, **kwargs)
 
-    def HasBulletSymbol(*args, **kwargs):
-        """HasBulletSymbol(self) -> bool"""
-        return _richtext.RichTextAttr_HasBulletSymbol(*args, **kwargs)
+    def HasBulletText(*args, **kwargs):
+        """HasBulletText(self) -> bool"""
+        return _richtext.RichTextAttr_HasBulletText(*args, **kwargs)
 
     def HasFlag(*args, **kwargs):
         """HasFlag(self, long flag) -> bool"""
@@ -565,7 +564,7 @@ class RichTextAttr(object):
     BulletFont = property(GetBulletFont,SetBulletFont,doc="See `GetBulletFont` and `SetBulletFont`") 
     BulletNumber = property(GetBulletNumber,SetBulletNumber,doc="See `GetBulletNumber` and `SetBulletNumber`") 
     BulletStyle = property(GetBulletStyle,SetBulletStyle,doc="See `GetBulletStyle` and `SetBulletStyle`") 
-    BulletSymbol = property(GetBulletSymbol,SetBulletSymbol,doc="See `GetBulletSymbol` and `SetBulletSymbol`") 
+    BulletText = property(GetBulletText,SetBulletText,doc="See `GetBulletText` and `SetBulletText`") 
     CharacterStyleName = property(GetCharacterStyleName,SetCharacterStyleName,doc="See `GetCharacterStyleName` and `SetCharacterStyleName`") 
     Flags = property(GetFlags,SetFlags,doc="See `GetFlags` and `SetFlags`") 
     Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
@@ -721,6 +720,22 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """
         return _richtext.RichTextCtrl_SaveFile(*args, **kwargs)
 
+    def SetHandlerFlags(*args, **kwargs):
+        """
+        SetHandlerFlags(self, int flags)
+
+        Set the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_SetHandlerFlags(*args, **kwargs)
+
+    def GetHandlerFlags(*args, **kwargs):
+        """
+        GetHandlerFlags(self) -> int
+
+        Get the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_GetHandlerFlags(*args, **kwargs)
+
     def MarkDirty(*args, **kwargs):
         """
         MarkDirty(self)
@@ -1158,7 +1173,7 @@ class RichTextCtrl(_windows.ScrolledWindow):
         return _richtext.RichTextCtrl_EndNumberedBullet(*args, **kwargs)
 
     def BeginSymbolBullet(*args, **kwargs):
-        """BeginSymbolBullet(self, char symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
+        """BeginSymbolBullet(self, String symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
         return _richtext.RichTextCtrl_BeginSymbolBullet(*args, **kwargs)
 
     def EndSymbolBullet(*args, **kwargs):
@@ -1181,6 +1196,38 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """EndParagraphStyle(self) -> bool"""
         return _richtext.RichTextCtrl_EndParagraphStyle(*args, **kwargs)
 
+    def BeginListStyle(*args, **kwargs):
+        """
+        BeginListStyle(self, String listStyle, int level=1, int number=1) -> bool
+
+        Begin named list style.
+        """
+        return _richtext.RichTextCtrl_BeginListStyle(*args, **kwargs)
+
+    def EndListStyle(*args, **kwargs):
+        """
+        EndListStyle(self) -> bool
+
+        End named list style.
+        """
+        return _richtext.RichTextCtrl_EndListStyle(*args, **kwargs)
+
+    def BeginURL(*args, **kwargs):
+        """
+        BeginURL(self, String url, String characterStyle=wxEmptyString) -> bool
+
+        Begin URL.
+        """
+        return _richtext.RichTextCtrl_BeginURL(*args, **kwargs)
+
+    def EndURL(*args, **kwargs):
+        """
+        EndURL(self) -> bool
+
+        End URL.
+        """
+        return _richtext.RichTextCtrl_EndURL(*args, **kwargs)
+
     def SetDefaultStyleToCursorStyle(*args, **kwargs):
         """SetDefaultStyleToCursorStyle(self) -> bool"""
         return _richtext.RichTextCtrl_SetDefaultStyleToCursorStyle(*args, **kwargs)
@@ -1388,6 +1435,10 @@ wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_RIGHT_CLIC
 wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK
 wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK = _richtext.wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK
 wxEVT_COMMAND_RICHTEXT_RETURN = _richtext.wxEVT_COMMAND_RICHTEXT_RETURN
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED
 EVT_RICHTEXT_ITEM_SELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_SELECTED, 1)
 EVT_RICHTEXT_ITEM_DESELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_DESELECTED, 1)
 EVT_RICHTEXT_LEFT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, 1)
@@ -1395,6 +1446,10 @@ EVT_RICHTEXT_RIGHT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK,
 EVT_RICHTEXT_MIDDLE_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, 1)
 EVT_RICHTEXT_LEFT_DCLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, 1)
 EVT_RICHTEXT_RETURN = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_RETURN, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED, 1)
 
 class RichTextEvent(_core.NotifyEvent):
     """Proxy of C++ RichTextEvent class"""
index 8aa0e4afa724d4efc06e7796f6c8508e2f384859..40b0d78cd2f619d94cfa3ed3d7145f04b0d017c2 100644 (file)
@@ -2854,114 +2854,6 @@ SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val)
     return SWIG_OK;
 }
 
-
-SWIGINTERN swig_type_info*
-SWIG_pchar_descriptor()
-{
-  static int init = 0;
-  static swig_type_info* info = 0;
-  if (!init) {
-    info = SWIG_TypeQuery("_p_char");
-    init = 1;
-  }
-  return info;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
-{
-  if (PyString_Check(obj)) {
-    char *cstr; Py_ssize_t len;
-    PyString_AsStringAndSize(obj, &cstr, &len);
-    if (cptr)  {
-      if (alloc) {
-       /* 
-          In python the user should not be able to modify the inner
-          string representation. To warranty that, if you define
-          SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string
-          buffer is always returned.
-
-          The default behavior is just to return the pointer value,
-          so, be careful.
-       */ 
-#if defined(SWIG_PYTHON_SAFE_CSTRINGS)
-       if (*alloc != SWIG_OLDOBJ) 
-#else
-       if (*alloc == SWIG_NEWOBJ) 
-#endif
-         {
-           *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
-           *alloc = SWIG_NEWOBJ;
-         }
-       else {
-         *cptr = cstr;
-         *alloc = SWIG_OLDOBJ;
-       }
-      } else {
-       *cptr = PyString_AsString(obj);
-      }
-    }
-    if (psize) *psize = len + 1;
-    return SWIG_OK;
-  } else {
-    swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
-    if (pchar_descriptor) {
-      void* vptr = 0;
-      if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
-       if (cptr) *cptr = (char *) vptr;
-       if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0;
-       if (alloc) *alloc = SWIG_OLDOBJ;
-       return SWIG_OK;
-      }
-    }
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharArray(PyObject * obj, char *val, size_t size)
-{ 
-  char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
-  int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
-  if (SWIG_IsOK(res)) {
-    if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;
-    if (csize <= size) {
-      if (val) {
-       if (csize) memcpy(val, cptr, csize*sizeof(char));
-       if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
-      }
-      if (alloc == SWIG_NEWOBJ) {
-       delete[] cptr;
-       res = SWIG_DelNewMask(res);
-      }      
-      return res;
-    }
-    if (alloc == SWIG_NEWOBJ) delete[] cptr;
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsVal_char (PyObject * obj, char *val)
-{    
-  int res = SWIG_AsCharArray(obj, val, 1);
-  if (!SWIG_IsOK(res)) {
-    long v;
-    res = SWIG_AddCast(SWIG_AsVal_long (obj, &v));
-    if (SWIG_IsOK(res)) {
-      if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
-       if (val) *val = static_cast< char >(v);
-      } else {
-       res = SWIG_OverflowError;
-      }
-    }
-  }
-  return res;
-}
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -4520,7 +4412,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   wxChar arg2 ;
@@ -4534,19 +4426,19 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
     (char *) "self",(char *) "symbol", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletSymbol",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletText",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxChar,  0  | 0);
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'"); 
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'"); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'");
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'");
     } else {
       wxChar * temp = reinterpret_cast< wxChar * >(argp2);
       arg2 = *temp;
@@ -4555,7 +4447,7 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->SetBulletSymbol(arg2);
+    (arg1)->SetBulletText(arg2);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -5211,10 +5103,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
-  wxChar result;
+  wxString *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -5223,16 +5115,25 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = ((wxRichTextAttr const *)arg1)->GetBulletSymbol();
+    {
+      wxString const &_result_ref = ((wxRichTextAttr const *)arg1)->GetBulletText();
+      result = (wxString *) &_result_ref;
+    }
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxChar(static_cast< const wxChar& >(result))), SWIGTYPE_p_wxChar, SWIG_POINTER_OWN |  0 );
+  {
+#if wxUSE_UNICODE
+    resultobj = PyUnicode_FromWideChar(result->c_str(), result->Len());
+#else
+    resultobj = PyString_FromStringAndSize(result->c_str(), result->Len());
+#endif
+  }
   return resultobj;
 fail:
   return NULL;
@@ -5846,7 +5747,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   bool result;
@@ -5858,12 +5759,12 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletSymbol();
+    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletText();
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -7080,6 +6981,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_SetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "flags", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextCtrl_SetHandlerFlags",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetHandlerFlags(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_GetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_GetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (int)((wxRichTextCtrl const *)arg1)->GetHandlerFlags();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_MarkDirty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -9618,15 +9585,14 @@ fail:
 SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
-  char arg2 ;
+  wxString *arg2 = 0 ;
   int arg3 ;
   int arg4 ;
   int arg5 = (int) wxTEXT_ATTR_BULLET_STYLE_SYMBOL ;
   bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char val2 ;
-  int ecode2 = 0 ;
+  bool temp2 = false ;
   int val3 ;
   int ecode3 = 0 ;
   int val4 ;
@@ -9648,11 +9614,11 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
-  ecode2 = SWIG_AsVal_char(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "2"" of type '" "char""'");
-  } 
-  arg2 = static_cast< char >(val2);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "3"" of type '" "int""'");
@@ -9672,15 +9638,23 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)(arg1)->BeginSymbolBullet(arg2,arg3,arg4,arg5);
+    result = (bool)(arg1)->BeginSymbolBullet((wxString const &)*arg2,arg3,arg4,arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
+  {
+    if (temp2)
+    delete arg2;
+  }
   return resultobj;
 fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
   return NULL;
 }
 
@@ -9871,6 +9845,203 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  int arg3 = (int) 1 ;
+  int arg4 = (int) 1 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "listStyle",(char *) "level",(char *) "number", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:RichTextCtrl_BeginListStyle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_int(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_int(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginListStyle((wxString const &)*arg2,arg3,arg4);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndListStyle();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  wxString const &arg3_defvalue = wxEmptyString ;
+  wxString *arg3 = (wxString *) &arg3_defvalue ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  bool temp3 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "url",(char *) "characterStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:RichTextCtrl_BeginURL",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    {
+      arg3 = wxString_in_helper(obj2);
+      if (arg3 == NULL) SWIG_fail;
+      temp3 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginURL((wxString const &)*arg2,(wxString const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndURL();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -11915,7 +12086,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_SetLineSpacing", (PyCFunction) _wrap_RichTextAttr_SetLineSpacing, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletStyle", (PyCFunction) _wrap_RichTextAttr_SetBulletStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletNumber", (PyCFunction) _wrap_RichTextAttr_SetBulletNumber, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"RichTextAttr_SetBulletSymbol", (PyCFunction) _wrap_RichTextAttr_SetBulletSymbol, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextAttr_SetBulletText", (PyCFunction) _wrap_RichTextAttr_SetBulletText, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletFont", (PyCFunction) _wrap_RichTextAttr_SetBulletFont, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_GetTextColour", (PyCFunction)_wrap_RichTextAttr_GetTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_GetBackgroundColour", (PyCFunction)_wrap_RichTextAttr_GetBackgroundColour, METH_O, NULL},
@@ -11937,7 +12108,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_GetLineSpacing", (PyCFunction)_wrap_RichTextAttr_GetLineSpacing, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletStyle", (PyCFunction)_wrap_RichTextAttr_GetBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletNumber", (PyCFunction)_wrap_RichTextAttr_GetBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_GetBulletSymbol", (PyCFunction)_wrap_RichTextAttr_GetBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_GetBulletText", (PyCFunction)_wrap_RichTextAttr_GetBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletFont", (PyCFunction)_wrap_RichTextAttr_GetBulletFont, METH_O, NULL},
         { (char *)"RichTextAttr_HasTextColour", (PyCFunction)_wrap_RichTextAttr_HasTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_HasBackgroundColour", (PyCFunction)_wrap_RichTextAttr_HasBackgroundColour, METH_O, NULL},
@@ -11958,7 +12129,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_HasParagraphStyleName", (PyCFunction)_wrap_RichTextAttr_HasParagraphStyleName, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletStyle", (PyCFunction)_wrap_RichTextAttr_HasBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletNumber", (PyCFunction)_wrap_RichTextAttr_HasBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_HasBulletSymbol", (PyCFunction)_wrap_RichTextAttr_HasBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_HasBulletText", (PyCFunction)_wrap_RichTextAttr_HasBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_HasFlag", (PyCFunction) _wrap_RichTextAttr_HasFlag, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_IsCharacterStyle", (PyCFunction)_wrap_RichTextAttr_IsCharacterStyle, METH_O, NULL},
         { (char *)"RichTextAttr_IsParagraphStyle", (PyCFunction)_wrap_RichTextAttr_IsParagraphStyle, METH_O, NULL},
@@ -11989,6 +12160,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_Remove", (PyCFunction) _wrap_RichTextCtrl_Remove, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_LoadFile", (PyCFunction) _wrap_RichTextCtrl_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_SaveFile", (PyCFunction) _wrap_RichTextCtrl_SaveFile, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_SetHandlerFlags", (PyCFunction) _wrap_RichTextCtrl_SetHandlerFlags, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_GetHandlerFlags", (PyCFunction)_wrap_RichTextCtrl_GetHandlerFlags, METH_O, NULL},
         { (char *)"RichTextCtrl_MarkDirty", (PyCFunction)_wrap_RichTextCtrl_MarkDirty, METH_O, NULL},
         { (char *)"RichTextCtrl_DiscardEdits", (PyCFunction)_wrap_RichTextCtrl_DiscardEdits, METH_O, NULL},
         { (char *)"RichTextCtrl_SetMaxLength", (PyCFunction) _wrap_RichTextCtrl_SetMaxLength, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -12063,6 +12236,10 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_EndCharacterStyle", (PyCFunction)_wrap_RichTextCtrl_EndCharacterStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_BeginParagraphStyle", (PyCFunction) _wrap_RichTextCtrl_BeginParagraphStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_EndParagraphStyle", (PyCFunction)_wrap_RichTextCtrl_EndParagraphStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginListStyle", (PyCFunction) _wrap_RichTextCtrl_BeginListStyle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndListStyle", (PyCFunction)_wrap_RichTextCtrl_EndListStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginURL", (PyCFunction) _wrap_RichTextCtrl_BeginURL, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndURL", (PyCFunction)_wrap_RichTextCtrl_EndURL, METH_O, NULL},
         { (char *)"RichTextCtrl_SetDefaultStyleToCursorStyle", (PyCFunction)_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectNone", (PyCFunction)_wrap_RichTextCtrl_SelectNone, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectWord", (PyCFunction) _wrap_RichTextCtrl_SelectWord, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -14269,7 +14446,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "TEXT_ATTR_PARAGRAPH_STYLE_NAME",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_PARAGRAPH_STYLE_NAME)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_NUMBER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_NUMBER)));
-  SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_SYMBOL",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_SYMBOL)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_NONE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_NONE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_ARABIC",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_ARABIC)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER)));
@@ -14302,6 +14478,10 @@ SWIGEXPORT void SWIG_init(void) {
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_RETURN", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_RETURN));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED));
   
   wxRichTextModuleInit();
   
index 9575e1663f257343d1b35778f6d10a73fcd267da..3d26ec5ccb94920f1c4456b382caee679966111a 100644 (file)
@@ -2775,7 +2775,7 @@ IMP_PYCALLBACK_OBJECT_STRING_pure(wxPyXmlSubclassFactory, wxXmlSubclassFactory,
 class wxPyXmlResourceHandler : public wxXmlResourceHandler {
 public:
     wxPyXmlResourceHandler() : wxXmlResourceHandler() {}
-    //~wxPyXmlResourceHandler();
+    ~wxPyXmlResourceHandler() {}
 
     // Base class virtuals
 
index 8d9e194b4bb40d5c8d66c7e1d6479381a76e5d8a..b19f2cfe3ccd36d4758d68a5c9a6004316ab72f4 100644 (file)
@@ -1649,6 +1649,260 @@ def Point2DFromPoint(*args, **kwargs):
 
 #---------------------------------------------------------------------------
 
+Inside = _core_.Inside
+OutLeft = _core_.OutLeft
+OutRight = _core_.OutRight
+OutTop = _core_.OutTop
+OutBottom = _core_.OutBottom
+class Rect2D(object):
+    """
+    wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+    with floating point component values.
+    """
+    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, wxDouble x=0.0, wxDouble y=0.0, wxDouble w=0.0, wxDouble h=0.0) -> Rect2D
+
+        wx.Rect2D is a rectangle, with position and size, in a 2D coordinate system
+        with floating point component values.
+        """
+        _core_.Rect2D_swiginit(self,_core_.new_Rect2D(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Rect2D
+    __del__ = lambda self : None;
+    def GetPosition(*args, **kwargs):
+        """GetPosition(self) -> Point2D"""
+        return _core_.Rect2D_GetPosition(*args, **kwargs)
+
+    def GetSize(*args, **kwargs):
+        """GetSize(self) -> Size"""
+        return _core_.Rect2D_GetSize(*args, **kwargs)
+
+    def GetLeft(*args, **kwargs):
+        """GetLeft(self) -> wxDouble"""
+        return _core_.Rect2D_GetLeft(*args, **kwargs)
+
+    def SetLeft(*args, **kwargs):
+        """SetLeft(self, wxDouble n)"""
+        return _core_.Rect2D_SetLeft(*args, **kwargs)
+
+    def MoveLeftTo(*args, **kwargs):
+        """MoveLeftTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveLeftTo(*args, **kwargs)
+
+    def GetTop(*args, **kwargs):
+        """GetTop(self) -> wxDouble"""
+        return _core_.Rect2D_GetTop(*args, **kwargs)
+
+    def SetTop(*args, **kwargs):
+        """SetTop(self, wxDouble n)"""
+        return _core_.Rect2D_SetTop(*args, **kwargs)
+
+    def MoveTopTo(*args, **kwargs):
+        """MoveTopTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveTopTo(*args, **kwargs)
+
+    def GetBottom(*args, **kwargs):
+        """GetBottom(self) -> wxDouble"""
+        return _core_.Rect2D_GetBottom(*args, **kwargs)
+
+    def SetBottom(*args, **kwargs):
+        """SetBottom(self, wxDouble n)"""
+        return _core_.Rect2D_SetBottom(*args, **kwargs)
+
+    def MoveBottomTo(*args, **kwargs):
+        """MoveBottomTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveBottomTo(*args, **kwargs)
+
+    def GetRight(*args, **kwargs):
+        """GetRight(self) -> wxDouble"""
+        return _core_.Rect2D_GetRight(*args, **kwargs)
+
+    def SetRight(*args, **kwargs):
+        """SetRight(self, wxDouble n)"""
+        return _core_.Rect2D_SetRight(*args, **kwargs)
+
+    def MoveRightTo(*args, **kwargs):
+        """MoveRightTo(self, wxDouble n)"""
+        return _core_.Rect2D_MoveRightTo(*args, **kwargs)
+
+    def GetLeftTop(*args, **kwargs):
+        """GetLeftTop(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftTop(*args, **kwargs)
+
+    def SetLeftTop(*args, **kwargs):
+        """SetLeftTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftTop(*args, **kwargs)
+
+    def MoveLeftTopTo(*args, **kwargs):
+        """MoveLeftTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftTopTo(*args, **kwargs)
+
+    def GetLeftBottom(*args, **kwargs):
+        """GetLeftBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetLeftBottom(*args, **kwargs)
+
+    def SetLeftBottom(*args, **kwargs):
+        """SetLeftBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetLeftBottom(*args, **kwargs)
+
+    def MoveLeftBottomTo(*args, **kwargs):
+        """MoveLeftBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveLeftBottomTo(*args, **kwargs)
+
+    def GetRightTop(*args, **kwargs):
+        """GetRightTop(self) -> Point2D"""
+        return _core_.Rect2D_GetRightTop(*args, **kwargs)
+
+    def SetRightTop(*args, **kwargs):
+        """SetRightTop(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightTop(*args, **kwargs)
+
+    def MoveRightTopTo(*args, **kwargs):
+        """MoveRightTopTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightTopTo(*args, **kwargs)
+
+    def GetRightBottom(*args, **kwargs):
+        """GetRightBottom(self) -> Point2D"""
+        return _core_.Rect2D_GetRightBottom(*args, **kwargs)
+
+    def SetRightBottom(*args, **kwargs):
+        """SetRightBottom(self, Point2D pt)"""
+        return _core_.Rect2D_SetRightBottom(*args, **kwargs)
+
+    def MoveRightBottomTo(*args, **kwargs):
+        """MoveRightBottomTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveRightBottomTo(*args, **kwargs)
+
+    def GetCentre(*args, **kwargs):
+        """GetCentre(self) -> Point2D"""
+        return _core_.Rect2D_GetCentre(*args, **kwargs)
+
+    def SetCentre(*args, **kwargs):
+        """SetCentre(self, Point2D pt)"""
+        return _core_.Rect2D_SetCentre(*args, **kwargs)
+
+    def MoveCentreTo(*args, **kwargs):
+        """MoveCentreTo(self, Point2D pt)"""
+        return _core_.Rect2D_MoveCentreTo(*args, **kwargs)
+
+    def GetOutcode(*args, **kwargs):
+        """GetOutcode(self, Point2D pt) -> int"""
+        return _core_.Rect2D_GetOutcode(*args, **kwargs)
+
+    def Contains(*args, **kwargs):
+        """Contains(self, Point2D pt) -> bool"""
+        return _core_.Rect2D_Contains(*args, **kwargs)
+
+    def ContainsRect(*args, **kwargs):
+        """ContainsRect(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_ContainsRect(*args, **kwargs)
+
+    def IsEmpty(*args, **kwargs):
+        """IsEmpty(self) -> bool"""
+        return _core_.Rect2D_IsEmpty(*args, **kwargs)
+
+    def HaveEqualSize(*args, **kwargs):
+        """HaveEqualSize(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_HaveEqualSize(*args, **kwargs)
+
+    def Inset(*args):
+        """
+        Inset(self, wxDouble x, wxDouble y)
+        Inset(self, wxDouble left, wxDouble top, wxDouble right, wxDouble bottom)
+        """
+        return _core_.Rect2D_Inset(*args)
+
+    def Offset(*args, **kwargs):
+        """Offset(self, Point2D pt)"""
+        return _core_.Rect2D_Offset(*args, **kwargs)
+
+    def ConstrainTo(*args, **kwargs):
+        """ConstrainTo(self, Rect2D rect)"""
+        return _core_.Rect2D_ConstrainTo(*args, **kwargs)
+
+    def Interpolate(*args, **kwargs):
+        """Interpolate(self, int widthfactor, int heightfactor) -> Point2D"""
+        return _core_.Rect2D_Interpolate(*args, **kwargs)
+
+    def Intersect(*args, **kwargs):
+        """Intersect(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Intersect(*args, **kwargs)
+
+    def CreateIntersection(*args, **kwargs):
+        """CreateIntersection(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateIntersection(*args, **kwargs)
+
+    def Intersects(*args, **kwargs):
+        """Intersects(self, Rect2D rect) -> bool"""
+        return _core_.Rect2D_Intersects(*args, **kwargs)
+
+    def Union(*args, **kwargs):
+        """Union(self, Rect2D otherRect)"""
+        return _core_.Rect2D_Union(*args, **kwargs)
+
+    def CreateUnion(*args, **kwargs):
+        """CreateUnion(self, Rect2D otherRect) -> Rect2D"""
+        return _core_.Rect2D_CreateUnion(*args, **kwargs)
+
+    def Scale(*args):
+        """
+        Scale(self, wxDouble f)
+        Scale(self, int num, int denum)
+        """
+        return _core_.Rect2D_Scale(*args)
+
+    def __eq__(*args, **kwargs):
+        """
+        __eq__(self, PyObject other) -> bool
+
+        Test for equality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___eq__(*args, **kwargs)
+
+    def __ne__(*args, **kwargs):
+        """
+        __ne__(self, PyObject other) -> bool
+
+        Test for inequality of wx.Rect2D objects.
+        """
+        return _core_.Rect2D___ne__(*args, **kwargs)
+
+    x = property(_core_.Rect2D_x_get, _core_.Rect2D_x_set)
+    y = property(_core_.Rect2D_y_get, _core_.Rect2D_y_set)
+    width = property(_core_.Rect2D_width_get, _core_.Rect2D_width_set)
+    height = property(_core_.Rect2D_height_get, _core_.Rect2D_height_set)
+    def Set(*args, **kwargs):
+        """Set(self, wxDouble x=0, wxDouble y=0, wxDouble width=0, wxDouble height=0)"""
+        return _core_.Rect2D_Set(*args, **kwargs)
+
+    def Get(*args, **kwargs):
+        """
+        Get() -> (x,y, width, height)
+
+        Return x, y, width and height y properties as a tuple.
+        """
+        return _core_.Rect2D_Get(*args, **kwargs)
+
+    def __str__(self):                   return str(self.Get())
+    def __repr__(self):                  return 'wx.Rect2D'+str(self.Get())
+    def __len__(self):                   return len(self.Get())
+    def __getitem__(self, index):        return self.Get()[index]
+    def __setitem__(self, index, val):
+        if index == 0: self.x = val
+        elif index == 1: self.y = val
+        elif index == 2: self.width = val
+        elif index == 3: self.height = val                        
+        else: raise IndexError
+    def __nonzero__(self):               return self.Get() != (0.0, 0.0, 0.0, 0.0)
+    __safe_for_unpickling__ = True
+    def __reduce__(self):                return (wx.Rect2D, self.Get())
+
+_core_.Rect2D_swigregister(Rect2D)
+
+#---------------------------------------------------------------------------
+
 FromStart = _core_.FromStart
 FromCurrent = _core_.FromCurrent
 FromEnd = _core_.FromEnd
index 4cae7ef5ccd4c44bdc6b3e4d78897f6662ace33f..9756289a33a887e1ba9516160864db17b80533cd 100644 (file)
@@ -2496,107 +2496,109 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxDateEvent swig_types[30]
 #define SWIGTYPE_p_wxDateTime swig_types[31]
 #define SWIGTYPE_p_wxDisplayChangedEvent swig_types[32]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[33]
-#define SWIGTYPE_p_wxDuplexMode swig_types[34]
-#define SWIGTYPE_p_wxEraseEvent swig_types[35]
-#define SWIGTYPE_p_wxEvent swig_types[36]
-#define SWIGTYPE_p_wxEventLoop swig_types[37]
-#define SWIGTYPE_p_wxEventLoopActivator swig_types[38]
-#define SWIGTYPE_p_wxEvtHandler swig_types[39]
-#define SWIGTYPE_p_wxFSFile swig_types[40]
-#define SWIGTYPE_p_wxFileSystem swig_types[41]
-#define SWIGTYPE_p_wxFileSystemHandler swig_types[42]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[43]
-#define SWIGTYPE_p_wxFocusEvent swig_types[44]
-#define SWIGTYPE_p_wxFont swig_types[45]
-#define SWIGTYPE_p_wxFrame swig_types[46]
-#define SWIGTYPE_p_wxGBPosition swig_types[47]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[48]
-#define SWIGTYPE_p_wxGBSpan swig_types[49]
-#define SWIGTYPE_p_wxGIFHandler swig_types[50]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[51]
-#define SWIGTYPE_p_wxGridSizer swig_types[52]
-#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[53]
-#define SWIGTYPE_p_wxICOHandler swig_types[54]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[55]
-#define SWIGTYPE_p_wxIdleEvent swig_types[56]
-#define SWIGTYPE_p_wxImage swig_types[57]
-#define SWIGTYPE_p_wxImageHandler swig_types[58]
-#define SWIGTYPE_p_wxImageHistogram swig_types[59]
-#define SWIGTYPE_p_wxImage_HSVValue swig_types[60]
-#define SWIGTYPE_p_wxImage_RGBValue swig_types[61]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[62]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[63]
-#define SWIGTYPE_p_wxInputStream swig_types[64]
-#define SWIGTYPE_p_wxInternetFSHandler swig_types[65]
-#define SWIGTYPE_p_wxItemContainer swig_types[66]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[67]
-#define SWIGTYPE_p_wxKeyEvent swig_types[68]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[69]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[70]
-#define SWIGTYPE_p_wxMemoryFSHandler swig_types[71]
-#define SWIGTYPE_p_wxMenu swig_types[72]
-#define SWIGTYPE_p_wxMenuBar swig_types[73]
-#define SWIGTYPE_p_wxMenuBarBase swig_types[74]
-#define SWIGTYPE_p_wxMenuEvent swig_types[75]
-#define SWIGTYPE_p_wxMenuItem swig_types[76]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[77]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[78]
-#define SWIGTYPE_p_wxMouseEvent swig_types[79]
-#define SWIGTYPE_p_wxMoveEvent swig_types[80]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[81]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[82]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[83]
-#define SWIGTYPE_p_wxObject swig_types[84]
-#define SWIGTYPE_p_wxOutputStream swig_types[85]
-#define SWIGTYPE_p_wxPCXHandler swig_types[86]
-#define SWIGTYPE_p_wxPNGHandler swig_types[87]
-#define SWIGTYPE_p_wxPNMHandler swig_types[88]
-#define SWIGTYPE_p_wxPaintEvent swig_types[89]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[90]
-#define SWIGTYPE_p_wxPaperSize swig_types[91]
-#define SWIGTYPE_p_wxPoint swig_types[92]
-#define SWIGTYPE_p_wxPoint2D swig_types[93]
-#define SWIGTYPE_p_wxPropagateOnce swig_types[94]
-#define SWIGTYPE_p_wxPropagationDisabler swig_types[95]
-#define SWIGTYPE_p_wxPyApp swig_types[96]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[97]
-#define SWIGTYPE_p_wxPyDropTarget swig_types[98]
-#define SWIGTYPE_p_wxPyEvent swig_types[99]
-#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[100]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[101]
-#define SWIGTYPE_p_wxPyInputStream swig_types[102]
-#define SWIGTYPE_p_wxPySizer swig_types[103]
-#define SWIGTYPE_p_wxPyValidator swig_types[104]
-#define SWIGTYPE_p_wxQuantize swig_types[105]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[106]
-#define SWIGTYPE_p_wxRealPoint swig_types[107]
-#define SWIGTYPE_p_wxRect swig_types[108]
-#define SWIGTYPE_p_wxRegion swig_types[109]
-#define SWIGTYPE_p_wxScrollEvent swig_types[110]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[111]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[112]
-#define SWIGTYPE_p_wxShowEvent swig_types[113]
-#define SWIGTYPE_p_wxSize swig_types[114]
-#define SWIGTYPE_p_wxSizeEvent swig_types[115]
-#define SWIGTYPE_p_wxSizer swig_types[116]
-#define SWIGTYPE_p_wxSizerItem swig_types[117]
-#define SWIGTYPE_p_wxStaticBox swig_types[118]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[119]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[120]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[121]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[122]
-#define SWIGTYPE_p_wxToolTip swig_types[123]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[124]
-#define SWIGTYPE_p_wxValidator swig_types[125]
-#define SWIGTYPE_p_wxVisualAttributes swig_types[126]
-#define SWIGTYPE_p_wxWindow swig_types[127]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[128]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[129]
-#define SWIGTYPE_p_wxXPMHandler swig_types[130]
-#define SWIGTYPE_p_wxZipFSHandler swig_types[131]
-static swig_type_info *swig_types[133];
-static swig_module_info swig_module = {swig_types, 132, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDouble swig_types[33]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[34]
+#define SWIGTYPE_p_wxDuplexMode swig_types[35]
+#define SWIGTYPE_p_wxEraseEvent swig_types[36]
+#define SWIGTYPE_p_wxEvent swig_types[37]
+#define SWIGTYPE_p_wxEventLoop swig_types[38]
+#define SWIGTYPE_p_wxEventLoopActivator swig_types[39]
+#define SWIGTYPE_p_wxEvtHandler swig_types[40]
+#define SWIGTYPE_p_wxFSFile swig_types[41]
+#define SWIGTYPE_p_wxFileSystem swig_types[42]
+#define SWIGTYPE_p_wxFileSystemHandler swig_types[43]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[44]
+#define SWIGTYPE_p_wxFocusEvent swig_types[45]
+#define SWIGTYPE_p_wxFont swig_types[46]
+#define SWIGTYPE_p_wxFrame swig_types[47]
+#define SWIGTYPE_p_wxGBPosition swig_types[48]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[49]
+#define SWIGTYPE_p_wxGBSpan swig_types[50]
+#define SWIGTYPE_p_wxGIFHandler swig_types[51]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[52]
+#define SWIGTYPE_p_wxGridSizer swig_types[53]
+#define SWIGTYPE_p_wxHelpEvent__Origin swig_types[54]
+#define SWIGTYPE_p_wxICOHandler swig_types[55]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[56]
+#define SWIGTYPE_p_wxIdleEvent swig_types[57]
+#define SWIGTYPE_p_wxImage swig_types[58]
+#define SWIGTYPE_p_wxImageHandler swig_types[59]
+#define SWIGTYPE_p_wxImageHistogram swig_types[60]
+#define SWIGTYPE_p_wxImage_HSVValue swig_types[61]
+#define SWIGTYPE_p_wxImage_RGBValue swig_types[62]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[63]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[64]
+#define SWIGTYPE_p_wxInputStream swig_types[65]
+#define SWIGTYPE_p_wxInternetFSHandler swig_types[66]
+#define SWIGTYPE_p_wxItemContainer swig_types[67]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[68]
+#define SWIGTYPE_p_wxKeyEvent swig_types[69]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[70]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[71]
+#define SWIGTYPE_p_wxMemoryFSHandler swig_types[72]
+#define SWIGTYPE_p_wxMenu swig_types[73]
+#define SWIGTYPE_p_wxMenuBar swig_types[74]
+#define SWIGTYPE_p_wxMenuBarBase swig_types[75]
+#define SWIGTYPE_p_wxMenuEvent swig_types[76]
+#define SWIGTYPE_p_wxMenuItem swig_types[77]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[78]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[79]
+#define SWIGTYPE_p_wxMouseEvent swig_types[80]
+#define SWIGTYPE_p_wxMoveEvent swig_types[81]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[82]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[83]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[84]
+#define SWIGTYPE_p_wxObject swig_types[85]
+#define SWIGTYPE_p_wxOutputStream swig_types[86]
+#define SWIGTYPE_p_wxPCXHandler swig_types[87]
+#define SWIGTYPE_p_wxPNGHandler swig_types[88]
+#define SWIGTYPE_p_wxPNMHandler swig_types[89]
+#define SWIGTYPE_p_wxPaintEvent swig_types[90]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[91]
+#define SWIGTYPE_p_wxPaperSize swig_types[92]
+#define SWIGTYPE_p_wxPoint swig_types[93]
+#define SWIGTYPE_p_wxPoint2D swig_types[94]
+#define SWIGTYPE_p_wxPropagateOnce swig_types[95]
+#define SWIGTYPE_p_wxPropagationDisabler swig_types[96]
+#define SWIGTYPE_p_wxPyApp swig_types[97]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[98]
+#define SWIGTYPE_p_wxPyDropTarget swig_types[99]
+#define SWIGTYPE_p_wxPyEvent swig_types[100]
+#define SWIGTYPE_p_wxPyFileSystemHandler swig_types[101]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[102]
+#define SWIGTYPE_p_wxPyInputStream swig_types[103]
+#define SWIGTYPE_p_wxPySizer swig_types[104]
+#define SWIGTYPE_p_wxPyValidator swig_types[105]
+#define SWIGTYPE_p_wxQuantize swig_types[106]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[107]
+#define SWIGTYPE_p_wxRealPoint swig_types[108]
+#define SWIGTYPE_p_wxRect swig_types[109]
+#define SWIGTYPE_p_wxRect2D swig_types[110]
+#define SWIGTYPE_p_wxRegion swig_types[111]
+#define SWIGTYPE_p_wxScrollEvent swig_types[112]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[113]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[114]
+#define SWIGTYPE_p_wxShowEvent swig_types[115]
+#define SWIGTYPE_p_wxSize swig_types[116]
+#define SWIGTYPE_p_wxSizeEvent swig_types[117]
+#define SWIGTYPE_p_wxSizer swig_types[118]
+#define SWIGTYPE_p_wxSizerItem swig_types[119]
+#define SWIGTYPE_p_wxStaticBox swig_types[120]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[121]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[122]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[123]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[124]
+#define SWIGTYPE_p_wxToolTip swig_types[125]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[126]
+#define SWIGTYPE_p_wxValidator swig_types[127]
+#define SWIGTYPE_p_wxVisualAttributes swig_types[128]
+#define SWIGTYPE_p_wxWindow swig_types[129]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[130]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[131]
+#define SWIGTYPE_p_wxXPMHandler swig_types[132]
+#define SWIGTYPE_p_wxZipFSHandler swig_types[133]
+static swig_type_info *swig_types[135];
+static swig_module_info swig_module = {swig_types, 134, 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)
 
@@ -2892,7 +2894,9 @@ static wxPyCoreAPI API = {
     wxPyCheckForApp,
 
     wxArrayDouble2PyList_helper,
-    wxPoint2D_LIST_helper
+    wxPoint2D_LIST_helper,
+    wxRect2D_helper,
+
 };
 
 #endif
@@ -3012,11 +3016,11 @@ SWIG_AsVal_float (PyObject * obj, float *val)
 }
 
 SWIGINTERN PyObject *wxSize_Get(wxSize *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3045,11 +3049,11 @@ SWIGINTERN void wxRealPoint_Set(wxRealPoint *self,double x,double y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxRealPoint_Get(wxRealPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y));
-            wxPyEndBlockThreads(blocked);
+            //PyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxPoint___eq__(wxPoint *self,PyObject *other){
@@ -3075,11 +3079,11 @@ SWIGINTERN void wxPoint_Set(wxPoint *self,long x,long y){
             self->y = y;
         }
 SWIGINTERN PyObject *wxPoint_Get(wxPoint *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 SWIGINTERN bool wxRect___eq__(wxRect *self,PyObject *other){
@@ -3107,13 +3111,13 @@ SWIGINTERN void wxRect_Set(wxRect *self,int x=0,int y=0,int width=0,int height=0
             self->height = height;
         }
 SWIGINTERN PyObject *wxRect_Get(wxRect *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(4);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             PyTuple_SET_ITEM(tup, 2, PyInt_FromLong(self->width));
             PyTuple_SET_ITEM(tup, 3, PyInt_FromLong(self->height));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -3127,10 +3131,10 @@ SWIGINTERN PyObject *wxRect_Get(wxRect *self){
         dest = reg1.GetBox();
 
         if (dest != wxRect(0,0,0,0)) {
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             wxRect* newRect = new wxRect(dest);
             obj = wxPyConstructObject((void*)newRect, wxT("wxRect"), true);
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
             return obj;
         }
         Py_INCREF(Py_None);
@@ -3160,11 +3164,45 @@ SWIGINTERN void wxPoint2D_Set(wxPoint2D *self,double x=0,double y=0){
             self->m_y = y;
         }
 SWIGINTERN PyObject *wxPoint2D_Get(wxPoint2D *self){
-            wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
             PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
-            wxPyEndBlockThreads(blocked);
+            //wxPyEndBlockThreads(blocked);
+            return tup;
+        }
+SWIGINTERN bool wxRect2D___eq__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return false;
+            if ( ! wxRect2D_helper(other, &obj) ) {
+                PyErr_Clear();
+                return false;
+            }
+            return self->operator==(*obj);
+        }
+SWIGINTERN bool wxRect2D___ne__(wxRect2D *self,PyObject *other){
+            wxRect2D  temp, *obj = &temp;
+            if ( other == Py_None ) return true;
+            if ( ! wxRect2D_helper(other, &obj)) {
+                PyErr_Clear();
+                return true;
+            }
+            return self->operator!=(*obj);
+        }
+SWIGINTERN void wxRect2D_Set(wxRect2D *self,wxDouble x=0,wxDouble y=0,wxDouble width=0,wxDouble height=0){
+            self->m_x = x;
+            self->m_y = y;
+            self->m_width = width;
+            self->m_height = height;
+        }
+SWIGINTERN PyObject *wxRect2D_Get(wxRect2D *self){
+            //wxPyBlock_t blocked = wxPyBeginBlockThreads();
+            PyObject* tup = PyTuple_New(4);
+            PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->m_x));
+            PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->m_y));
+            PyTuple_SET_ITEM(tup, 2, PyFloat_FromDouble(self->m_width));
+            PyTuple_SET_ITEM(tup, 3, PyFloat_FromDouble(self->m_height));
+            //wxPyEndBlockThreads(blocked);
             return tup;
         }
 
@@ -4601,9 +4639,7 @@ SWIGINTERN PyObject *_wrap_new_Size(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxSize *)new wxSize(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxSize, SWIG_POINTER_NEW |  0 );
@@ -4628,10 +4664,8 @@ SWIGINTERN PyObject *_wrap_delete_Size(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4732,9 +4766,7 @@ SWIGINTERN PyObject *_wrap_Size___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4769,9 +4801,7 @@ SWIGINTERN PyObject *_wrap_Size___sub__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -4805,9 +4835,7 @@ SWIGINTERN PyObject *_wrap_Size_IncTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4841,9 +4869,7 @@ SWIGINTERN PyObject *_wrap_Size_DecTo(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecTo((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4888,9 +4914,7 @@ SWIGINTERN PyObject *_wrap_Size_IncBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->IncBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4935,9 +4959,7 @@ SWIGINTERN PyObject *_wrap_Size_DecBy(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->DecBy(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -4982,9 +5004,7 @@ SWIGINTERN PyObject *_wrap_Size_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *
   } 
   arg3 = static_cast< float >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Scale(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5029,9 +5049,7 @@ SWIGINTERN PyObject *_wrap_Size_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Set(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5067,9 +5085,7 @@ SWIGINTERN PyObject *_wrap_Size_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5105,9 +5121,7 @@ SWIGINTERN PyObject *_wrap_Size_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5133,9 +5147,7 @@ SWIGINTERN PyObject *_wrap_Size_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5161,9 +5173,7 @@ SWIGINTERN PyObject *_wrap_Size_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxSize const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -5189,9 +5199,7 @@ SWIGINTERN PyObject *_wrap_Size_IsFullySpecified(PyObject *SWIGUNUSEDPARM(self),
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxSize const *)arg1)->IsFullySpecified();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -5227,9 +5235,7 @@ SWIGINTERN PyObject *_wrap_Size_SetDefaults(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetDefaults((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5255,9 +5261,7 @@ SWIGINTERN PyObject *_wrap_Size_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxSize * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxSize_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5415,9 +5419,7 @@ SWIGINTERN PyObject *_wrap_new_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRealPoint *)new wxRealPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_NEW |  0 );
@@ -5442,10 +5444,8 @@ SWIGINTERN PyObject *_wrap_delete_RealPoint(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5546,9 +5546,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___add__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5583,9 +5581,7 @@ SWIGINTERN PyObject *_wrap_RealPoint___sub__(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRealPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxRealPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRealPoint(static_cast< const wxRealPoint& >(result))), SWIGTYPE_p_wxRealPoint, SWIG_POINTER_OWN |  0 );
@@ -5630,9 +5626,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Set(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< double >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRealPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5658,9 +5652,7 @@ SWIGINTERN PyObject *_wrap_RealPoint_Get(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRealPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRealPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -5818,9 +5810,7 @@ SWIGINTERN PyObject *_wrap_new_Point(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     arg2 = static_cast< int >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint *)new wxPoint(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_NEW |  0 );
@@ -5845,10 +5835,8 @@ SWIGINTERN PyObject *_wrap_delete_Point(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -5949,9 +5937,7 @@ SWIGINTERN PyObject *_wrap_Point___add__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator +((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -5986,9 +5972,7 @@ SWIGINTERN PyObject *_wrap_Point___sub__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6023,12 +6007,10 @@ SWIGINTERN PyObject *_wrap_Point___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator +=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6063,12 +6045,10 @@ SWIGINTERN PyObject *_wrap_Point___isub__(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint &_result_ref = (arg1)->operator -=((wxPoint const &)*arg2);
       result = (wxPoint *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6113,9 +6093,7 @@ SWIGINTERN PyObject *_wrap_Point_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg3 = static_cast< long >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6141,9 +6119,7 @@ SWIGINTERN PyObject *_wrap_Point_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxPoint * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -6217,9 +6193,7 @@ SWIGINTERN PyObject *_wrap_new_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg4 = static_cast< int >(val4);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect(arg1,arg2,arg3,arg4);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_NEW |  0 );
@@ -6252,9 +6226,7 @@ SWIGINTERN PyObject *_wrap_new_RectPP(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6287,9 +6259,7 @@ SWIGINTERN PyObject *_wrap_new_RectPS(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxPoint const &)*arg1,(wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6315,9 +6285,7 @@ SWIGINTERN PyObject *_wrap_new_RectS(PyObject *SWIGUNUSEDPARM(self), PyObject *a
     if ( ! wxSize_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxRect *)new wxRect((wxSize const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -6342,10 +6310,8 @@ SWIGINTERN PyObject *_wrap_delete_Rect(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6371,9 +6337,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetX();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6409,9 +6373,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetX(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetX(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6437,9 +6399,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)(arg1)->GetY();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6475,9 +6435,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetY(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetY(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6503,9 +6461,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetWidth();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6541,9 +6497,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetWidth(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetWidth(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6569,9 +6523,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetHeight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -6607,9 +6559,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetHeight(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetHeight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6635,9 +6585,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetPosition();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6671,9 +6619,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetPosition(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetPosition((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6699,9 +6645,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetSize();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
@@ -6735,9 +6679,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetSize(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetSize((wxSize const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6763,9 +6705,7 @@ SWIGINTERN PyObject *_wrap_Rect_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->IsEmpty();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -6793,9 +6733,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6829,9 +6767,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopLeft(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6857,9 +6793,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6893,9 +6827,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomRight(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6921,9 +6853,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetTopRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -6957,9 +6887,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTopRight(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTopRight((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -6985,9 +6913,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->GetBottomLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint(static_cast< const wxPoint& >(result))), SWIGTYPE_p_wxPoint, SWIG_POINTER_OWN |  0 );
@@ -7021,9 +6947,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottomLeft(PyObject *SWIGUNUSEDPARM(self), Py
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottomLeft((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7049,9 +6973,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetLeft();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7077,9 +6999,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetTop();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7105,9 +7025,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetBottom();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7133,9 +7051,7 @@ SWIGINTERN PyObject *_wrap_Rect_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (int)((wxRect const *)arg1)->GetRight();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_int(static_cast< int >(result));
@@ -7171,9 +7087,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetLeft(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7209,9 +7123,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetRight(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7247,9 +7159,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetTop(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7285,9 +7195,7 @@ SWIGINTERN PyObject *_wrap_Rect_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObje
   } 
   arg2 = static_cast< int >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetBottom(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7333,12 +7241,10 @@ SWIGINTERN PyObject *_wrap_Rect_Inflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Inflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7384,12 +7290,10 @@ SWIGINTERN PyObject *_wrap_Rect_Deflate(PyObject *SWIGUNUSEDPARM(self), PyObject
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->Deflate(arg2,arg3);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, 0 |  0 );
@@ -7434,9 +7338,7 @@ SWIGINTERN PyObject *_wrap_Rect_OffsetXY(PyObject *SWIGUNUSEDPARM(self), PyObjec
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7470,9 +7372,7 @@ SWIGINTERN PyObject *_wrap_Rect_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->Offset((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -7507,9 +7407,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObje
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Intersect((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7544,9 +7442,7 @@ SWIGINTERN PyObject *_wrap_Rect_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->Union((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7581,9 +7477,7 @@ SWIGINTERN PyObject *_wrap_Rect___add__(PyObject *SWIGUNUSEDPARM(self), PyObject
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = ((wxRect const *)arg1)->operator +((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7618,12 +7512,10 @@ SWIGINTERN PyObject *_wrap_Rect___iadd__(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxRect &_result_ref = (arg1)->operator +=((wxRect const &)*arg2);
       result = (wxRect *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -7735,9 +7627,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsXY(PyObject *SWIGUNUSEDPARM(self), PyObj
   } 
   arg3 = static_cast< int >(val3);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7774,9 +7664,7 @@ SWIGINTERN PyObject *_wrap_Rect_Contains(PyObject *SWIGUNUSEDPARM(self), PyObjec
     if ( ! wxPoint_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxPoint const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7813,9 +7701,7 @@ SWIGINTERN PyObject *_wrap_Rect_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyO
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Contains((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7852,9 +7738,7 @@ SWIGINTERN PyObject *_wrap_Rect_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (bool)((wxRect const *)arg1)->Intersects((wxRect const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
@@ -7902,9 +7786,7 @@ SWIGINTERN PyObject *_wrap_Rect_CenterIn(PyObject *SWIGUNUSEDPARM(self), PyObjec
     arg3 = static_cast< int >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->CenterIn((wxRect const &)*arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
@@ -8187,9 +8069,7 @@ SWIGINTERN PyObject *_wrap_Rect_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
     arg5 = static_cast< int >(val5);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxRect_Set(arg1,arg2,arg3,arg4,arg5);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8215,9 +8095,7 @@ SWIGINTERN PyObject *_wrap_Rect_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
   }
   arg1 = reinterpret_cast< wxRect * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxRect_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -8309,9 +8187,7 @@ SWIGINTERN PyObject *_wrap_new_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg2 = static_cast< double >(val2);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D(arg1,arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_NEW |  0 );
@@ -8337,9 +8213,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DCopy(PyObject *SWIGUNUSEDPARM(self), PyObj
     if ( ! wxPoint2D_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint2D const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8365,9 +8239,7 @@ SWIGINTERN PyObject *_wrap_new_Point2DFromPoint(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint_helper(obj0, &arg1)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (wxPoint2D *)new wxPoint2D((wxPoint const &)*arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8392,10 +8264,8 @@ SWIGINTERN PyObject *_wrap_delete_Point2D(PyObject *SWIGUNUSEDPARM(self), PyObje
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     delete arg1;
     
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8428,9 +8298,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetFloor(PyObject *SWIGUNUSEDPARM(self), PyOb
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetFloor(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8475,9 +8343,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetRounded(PyObject *SWIGUNUSEDPARM(self), Py
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     ((wxPoint2D const *)arg1)->GetRounded(arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8515,9 +8381,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorLength(PyObject *SWIGUNUSEDPARM(self
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorLength();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8543,9 +8407,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetVectorAngle();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8581,9 +8443,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorLength(PyObject *SWIGUNUSEDPARM(self
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorLength(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8619,9 +8479,7 @@ SWIGINTERN PyObject *_wrap_Point2D_SetVectorAngle(PyObject *SWIGUNUSEDPARM(self)
   } 
   arg2 = static_cast< double >(val2);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     (arg1)->SetVectorAngle(arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -8656,9 +8514,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistance(PyObject *SWIGUNUSEDPARM(self), P
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistance((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8693,9 +8549,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDistanceSquare(PyObject *SWIGUNUSEDPARM(se
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDistanceSquare((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8730,9 +8584,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetDotProduct(PyObject *SWIGUNUSEDPARM(self),
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetDotProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8767,9 +8619,7 @@ SWIGINTERN PyObject *_wrap_Point2D_GetCrossProduct(PyObject *SWIGUNUSEDPARM(self
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (double)((wxPoint2D const *)arg1)->GetCrossProduct((wxPoint2D const &)*arg2);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_From_double(static_cast< double >(result));
@@ -8795,9 +8645,7 @@ SWIGINTERN PyObject *_wrap_Point2D___neg__(PyObject *SWIGUNUSEDPARM(self), PyObj
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (arg1)->operator -();
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8832,12 +8680,10 @@ SWIGINTERN PyObject *_wrap_Point2D___iadd__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator +=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8872,12 +8718,10 @@ SWIGINTERN PyObject *_wrap_Point2D___isub__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator -=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8912,12 +8756,10 @@ SWIGINTERN PyObject *_wrap_Point2D___imul__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator *=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -8952,12 +8794,10 @@ SWIGINTERN PyObject *_wrap_Point2D___idiv__(PyObject *SWIGUNUSEDPARM(self), PyOb
     if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     {
       wxPoint2D &_result_ref = (arg1)->operator /=((wxPoint2D const &)*arg2);
       result = (wxPoint2D *) &_result_ref;
     }
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPoint2D, SWIG_POINTER_OWN |  0 );
@@ -9178,9 +9018,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject
     arg3 = static_cast< double >(val3);
   }
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     wxPoint2D_Set(arg1,arg2,arg3);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -9206,9 +9044,7 @@ SWIGINTERN PyObject *_wrap_Point2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject
   }
   arg1 = reinterpret_cast< wxPoint2D * >(argp1);
   {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
     result = (PyObject *)wxPoint2D_Get(arg1);
-    wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = result;
@@ -9229,6 +9065,2276 @@ SWIGINTERN PyObject *Point2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDouble arg1 = (wxDouble) 0.0 ;
+  wxDouble arg2 = (wxDouble) 0.0 ;
+  wxDouble arg3 = (wxDouble) 0.0 ;
+  wxDouble arg4 = (wxDouble) 0.0 ;
+  wxRect2D *result = 0 ;
+  void *argp1 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OOOO:new_Rect2D",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (obj0) {
+    {
+      res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res1)) {
+        SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp1) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "1"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp1);
+        arg1 = *temp;
+        if (SWIG_IsNewObj(res1)) delete temp;
+      }
+    }
+  }
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Rect2D" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  {
+    result = (wxRect2D *)new wxRect2D(arg1,arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxRect2D, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_Rect2D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Rect2D" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetPosition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetPosition" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetPosition();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_GetSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxSize 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetSize" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (arg1)->GetSize();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxSize(static_cast< const wxSize& >(result))), SWIGTYPE_p_wxSize, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeft" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeft();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetLeft(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeft",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeft" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetLeft" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetLeft(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveLeftTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveLeftTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetTop" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetTop(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveTopTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveTopTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetBottom" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetBottom(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveBottomTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveBottomTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRight" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRight();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_SetRight(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRight",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRight" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_SetRight" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->SetRight(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "n", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_MoveRightTo" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->MoveRightTo(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetLeftBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetLeftBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetLeftBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetLeftBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetLeftBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveLeftBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveLeftBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveLeftBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveLeftBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightTop" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightTop();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightTop(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightTop",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightTop" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightTop((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightTopTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightTopTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightTopTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightTopTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetRightBottom" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetRightBottom();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetRightBottom(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetRightBottom",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetRightBottom" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetRightBottom((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveRightBottomTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveRightBottomTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveRightBottomTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveRightBottomTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetCentre" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = ((wxRect2D const *)arg1)->GetCentre();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_SetCentre(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_SetCentre",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_SetCentre" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->SetCentre((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_MoveCentreTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_MoveCentreTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_MoveCentreTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveCentreTo((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_GetOutcode(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxOutCode result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_GetOutcode",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_GetOutcode" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (wxOutCode)((wxRect2D const *)arg1)->GetOutcode((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Contains(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Contains",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Contains" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ContainsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ContainsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ContainsRect" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Contains((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_IsEmpty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  bool 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_IsEmpty" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (bool)((wxRect2D const *)arg1)->IsEmpty();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_HaveEqualSize(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_HaveEqualSize",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_HaveEqualSize" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->HaveEqualSize((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  wxDouble arg4 ;
+  wxDouble arg5 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Inset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    res3 = SWIG_ConvertPtr(swig_obj[2], &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res3)) {
+      SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp3) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "3"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+      arg3 = *temp;
+      if (SWIG_IsNewObj(res3)) delete temp;
+    }
+  }
+  {
+    res4 = SWIG_ConvertPtr(swig_obj[3], &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res4)) {
+      SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp4) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "4"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+      arg4 = *temp;
+      if (SWIG_IsNewObj(res4)) delete temp;
+    }
+  }
+  {
+    res5 = SWIG_ConvertPtr(swig_obj[4], &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res5)) {
+      SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp5) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Inset" "', expected argument " "5"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+      arg5 = *temp;
+      if (SWIG_IsNewObj(res5)) delete temp;
+    }
+  }
+  {
+    (arg1)->Inset(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Inset(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Inset",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 3) {
+    return _wrap_Rect2D_Inset__SWIG_0(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_Rect2D_Inset__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Inset'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Offset(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pt", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Offset",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Offset" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Offset((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_ConstrainTo(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_ConstrainTo",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_ConstrainTo" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->ConstrainTo((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Interpolate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  wxPoint2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "widthfactor",(char *) "heightfactor", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Rect2D_Interpolate",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Interpolate" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Interpolate" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Interpolate" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    result = (arg1)->Interpolate(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_Rect2D_Intersect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersect" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Intersect((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateIntersection(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateIntersection",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateIntersection" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateIntersection((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Intersects(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "rect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Intersects",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Intersects" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = (bool)((wxRect2D const *)arg1)->Intersects((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Union(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_Union",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Union" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->Union((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_CreateUnion(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxRect2D *arg2 = 0 ;
+  wxRect2D result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect2D temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "otherRect", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D_CreateUnion",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_CreateUnion" "', expected argument " "1"" of type '" "wxRect2D const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect2D_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    result = ((wxRect2D const *)arg1)->CreateUnion((wxRect2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect2D(static_cast< const wxRect2D& >(result))), SWIGTYPE_p_wxRect2D, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  {
+    (arg1)->Scale(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  
+  if ((nobjs < 3) || (nobjs > 3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Scale" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Rect2D_Scale" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Rect2D_Scale" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    (arg1)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Scale(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"Rect2D_Scale",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    return _wrap_Rect2D_Scale__SWIG_0(self, argc, argv);
+  }
+  if (argc == 3) {
+    return _wrap_Rect2D_Scale__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'Rect2D_Scale'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___eq__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___eq__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___eq__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___eq__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D___ne__(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "other", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Rect2D___ne__",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D___ne__" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  arg2 = obj1;
+  {
+    result = (bool)wxRect2D___ne__(arg1,arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_x_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_x_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_x = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_x_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_x_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_x);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_y_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_y_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_y = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_y_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_y_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_y);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_width_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_width_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_width = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_width_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_width_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_width);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_set(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  PyObject *swig_obj[2] ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"Rect2D_height_set",2,2,swig_obj)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_height_set" "', expected argument " "2"" of type '" "wxDouble""'");
+    } else {
+      wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+      arg2 = *temp;
+      if (SWIG_IsNewObj(res2)) delete temp;
+    }
+  }
+  if (arg1) (arg1)->m_height = arg2;
+  
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_height_get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble 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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_height_get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  result =  ((arg1)->m_height);
+  resultobj = SWIG_NewPointerObj((new wxDouble(static_cast< const wxDouble& >(result))), SWIGTYPE_p_wxDouble, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Set(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  wxDouble arg2 = (wxDouble) 0 ;
+  wxDouble arg3 = (wxDouble) 0 ;
+  wxDouble arg4 = (wxDouble) 0 ;
+  wxDouble arg5 = (wxDouble) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
+  void *argp3 ;
+  int res3 = 0 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  void *argp5 ;
+  int res5 = 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 *) "width",(char *) "height", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOO:Rect2D_Set",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Set" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  if (obj1) {
+    {
+      res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res2)) {
+        SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp2) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "2"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp2);
+        arg2 = *temp;
+        if (SWIG_IsNewObj(res2)) delete temp;
+      }
+    }
+  }
+  if (obj2) {
+    {
+      res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res3)) {
+        SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp3) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "3"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp3);
+        arg3 = *temp;
+        if (SWIG_IsNewObj(res3)) delete temp;
+      }
+    }
+  }
+  if (obj3) {
+    {
+      res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res4)) {
+        SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp4) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "4"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp4);
+        arg4 = *temp;
+        if (SWIG_IsNewObj(res4)) delete temp;
+      }
+    }
+  }
+  if (obj4) {
+    {
+      res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxDouble,  0  | 0);
+      if (!SWIG_IsOK(res5)) {
+        SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'"); 
+      }  
+      if (!argp5) {
+        SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Rect2D_Set" "', expected argument " "5"" of type '" "wxDouble""'");
+      } else {
+        wxDouble * temp = reinterpret_cast< wxDouble * >(argp5);
+        arg5 = *temp;
+        if (SWIG_IsNewObj(res5)) delete temp;
+      }
+    }
+  }
+  {
+    wxRect2D_Set(arg1,arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Rect2D_Get(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRect2D *arg1 = (wxRect2D *) 0 ;
+  PyObject *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_wxRect2D, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Rect2D_Get" "', expected argument " "1"" of type '" "wxRect2D *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRect2D * >(argp1);
+  {
+    result = (PyObject *)wxRect2D_Get(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = result;
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *Rect2D_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxRect2D, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *Rect2D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN int DefaultPosition_set(PyObject *) {
   SWIG_Error(SWIG_AttributeError,"Variable DefaultPosition is read-only.");
   return 1;
@@ -54459,6 +56565,66 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Point2D_Get", (PyCFunction)_wrap_Point2D_Get, METH_O, NULL},
         { (char *)"Point2D_swigregister", Point2D_swigregister, METH_VARARGS, NULL},
         { (char *)"Point2D_swiginit", Point2D_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_Rect2D", (PyCFunction) _wrap_new_Rect2D, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_Rect2D", (PyCFunction)_wrap_delete_Rect2D, METH_O, NULL},
+        { (char *)"Rect2D_GetPosition", (PyCFunction)_wrap_Rect2D_GetPosition, METH_O, NULL},
+        { (char *)"Rect2D_GetSize", (PyCFunction)_wrap_Rect2D_GetSize, METH_O, NULL},
+        { (char *)"Rect2D_GetLeft", (PyCFunction)_wrap_Rect2D_GetLeft, METH_O, NULL},
+        { (char *)"Rect2D_SetLeft", (PyCFunction) _wrap_Rect2D_SetLeft, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTo", (PyCFunction) _wrap_Rect2D_MoveLeftTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetTop", (PyCFunction)_wrap_Rect2D_GetTop, METH_O, NULL},
+        { (char *)"Rect2D_SetTop", (PyCFunction) _wrap_Rect2D_SetTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveTopTo", (PyCFunction) _wrap_Rect2D_MoveTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetBottom", (PyCFunction)_wrap_Rect2D_GetBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetBottom", (PyCFunction) _wrap_Rect2D_SetBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveBottomTo", (PyCFunction) _wrap_Rect2D_MoveBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRight", (PyCFunction)_wrap_Rect2D_GetRight, METH_O, NULL},
+        { (char *)"Rect2D_SetRight", (PyCFunction) _wrap_Rect2D_SetRight, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTo", (PyCFunction) _wrap_Rect2D_MoveRightTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftTop", (PyCFunction)_wrap_Rect2D_GetLeftTop, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftTop", (PyCFunction) _wrap_Rect2D_SetLeftTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftTopTo", (PyCFunction) _wrap_Rect2D_MoveLeftTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetLeftBottom", (PyCFunction)_wrap_Rect2D_GetLeftBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetLeftBottom", (PyCFunction) _wrap_Rect2D_SetLeftBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveLeftBottomTo", (PyCFunction) _wrap_Rect2D_MoveLeftBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightTop", (PyCFunction)_wrap_Rect2D_GetRightTop, METH_O, NULL},
+        { (char *)"Rect2D_SetRightTop", (PyCFunction) _wrap_Rect2D_SetRightTop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightTopTo", (PyCFunction) _wrap_Rect2D_MoveRightTopTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetRightBottom", (PyCFunction)_wrap_Rect2D_GetRightBottom, METH_O, NULL},
+        { (char *)"Rect2D_SetRightBottom", (PyCFunction) _wrap_Rect2D_SetRightBottom, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveRightBottomTo", (PyCFunction) _wrap_Rect2D_MoveRightBottomTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetCentre", (PyCFunction)_wrap_Rect2D_GetCentre, METH_O, NULL},
+        { (char *)"Rect2D_SetCentre", (PyCFunction) _wrap_Rect2D_SetCentre, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_MoveCentreTo", (PyCFunction) _wrap_Rect2D_MoveCentreTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_GetOutcode", (PyCFunction) _wrap_Rect2D_GetOutcode, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Contains", (PyCFunction) _wrap_Rect2D_Contains, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ContainsRect", (PyCFunction) _wrap_Rect2D_ContainsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_IsEmpty", (PyCFunction)_wrap_Rect2D_IsEmpty, METH_O, NULL},
+        { (char *)"Rect2D_HaveEqualSize", (PyCFunction) _wrap_Rect2D_HaveEqualSize, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Inset", _wrap_Rect2D_Inset, METH_VARARGS, NULL},
+        { (char *)"Rect2D_Offset", (PyCFunction) _wrap_Rect2D_Offset, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_ConstrainTo", (PyCFunction) _wrap_Rect2D_ConstrainTo, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Interpolate", (PyCFunction) _wrap_Rect2D_Interpolate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersect", (PyCFunction) _wrap_Rect2D_Intersect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateIntersection", (PyCFunction) _wrap_Rect2D_CreateIntersection, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Intersects", (PyCFunction) _wrap_Rect2D_Intersects, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Union", (PyCFunction) _wrap_Rect2D_Union, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_CreateUnion", (PyCFunction) _wrap_Rect2D_CreateUnion, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Scale", _wrap_Rect2D_Scale, METH_VARARGS, NULL},
+        { (char *)"Rect2D___eq__", (PyCFunction) _wrap_Rect2D___eq__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D___ne__", (PyCFunction) _wrap_Rect2D___ne__, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_x_set", _wrap_Rect2D_x_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_x_get", (PyCFunction)_wrap_Rect2D_x_get, METH_O, NULL},
+        { (char *)"Rect2D_y_set", _wrap_Rect2D_y_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_y_get", (PyCFunction)_wrap_Rect2D_y_get, METH_O, NULL},
+        { (char *)"Rect2D_width_set", _wrap_Rect2D_width_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_width_get", (PyCFunction)_wrap_Rect2D_width_get, METH_O, NULL},
+        { (char *)"Rect2D_height_set", _wrap_Rect2D_height_set, METH_VARARGS, NULL},
+        { (char *)"Rect2D_height_get", (PyCFunction)_wrap_Rect2D_height_get, METH_O, NULL},
+        { (char *)"Rect2D_Set", (PyCFunction) _wrap_Rect2D_Set, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Rect2D_Get", (PyCFunction)_wrap_Rect2D_Get, METH_O, NULL},
+        { (char *)"Rect2D_swigregister", Rect2D_swigregister, METH_VARARGS, NULL},
+        { (char *)"Rect2D_swiginit", Rect2D_swiginit, METH_VARARGS, NULL},
         { (char *)"new_InputStream", (PyCFunction) _wrap_new_InputStream, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_InputStream", (PyCFunction)_wrap_delete_InputStream, METH_O, NULL},
         { (char *)"InputStream_close", (PyCFunction)_wrap_InputStream_close, METH_O, NULL},
@@ -56370,6 +58536,7 @@ static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", "wxDateEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDateTime = {"_p_wxDateTime", "wxDateTime *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", "wxDisplayChangedEvent *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDouble = {"_p_wxDouble", "wxDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", "wxDropFilesEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", "wxEraseEvent *", 0, 0, (void*)0, 0};
@@ -56446,6 +58613,7 @@ static swig_type_info _swigt__p_wxQuantize = {"_p_wxQuantize", "wxQuantize *", 0
 static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", "wxQueryNewPaletteEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRealPoint = {"_p_wxRealPoint", "wxRealPoint *", 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_wxRect2D = {"_p_wxRect2D", "wxRect2D *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", "wxScrollEvent *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", "wxScrollWinEvent *", 0, 0, (void*)0, 0};
@@ -56504,6 +58672,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDateTime,
   &_swigt__p_wxDisplayChangedEvent,
+  &_swigt__p_wxDouble,
   &_swigt__p_wxDropFilesEvent,
   &_swigt__p_wxDuplexMode,
   &_swigt__p_wxEraseEvent,
@@ -56580,6 +58749,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRealPoint,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2D,
   &_swigt__p_wxRegion,
   &_swigt__p_wxScrollEvent,
   &_swigt__p_wxScrollWinEvent,
@@ -56638,6 +58808,7 @@ static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxDC, 0, 0, 0},{0, 0, 0,
 static swig_cast_info _swigc__p_wxDateEvent[] = {  {&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDateTime[] = {  {&_swigt__p_wxDateTime, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {  {&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDouble[] = {  {&_swigt__p_wxDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDropFilesEvent[] = {  {&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEraseEvent[] = {  {&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56714,6 +58885,7 @@ static swig_cast_info _swigc__p_wxQuantize[] = {  {&_swigt__p_wxQuantize, 0, 0,
 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {  {&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRealPoint[] = {  {&_swigt__p_wxRealPoint, 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_wxRect2D[] = {  {&_swigt__p_wxRect2D, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollEvent[] = {  {&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxScrollWinEvent[] = {  {&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
@@ -56772,6 +58944,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxDateEvent,
   _swigc__p_wxDateTime,
   _swigc__p_wxDisplayChangedEvent,
+  _swigc__p_wxDouble,
   _swigc__p_wxDropFilesEvent,
   _swigc__p_wxDuplexMode,
   _swigc__p_wxEraseEvent,
@@ -56848,6 +59021,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRealPoint,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2D,
   _swigc__p_wxRegion,
   _swigc__p_wxScrollEvent,
   _swigc__p_wxScrollWinEvent,
@@ -58037,6 +60211,11 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "CURSOR_COPY_ARROW",SWIG_From_int(static_cast< int >(wxCURSOR_COPY_ARROW)));
   SWIG_Python_SetConstant(d, "CURSOR_ARROWWAIT",SWIG_From_int(static_cast< int >(wxCURSOR_ARROWWAIT)));
   SWIG_Python_SetConstant(d, "CURSOR_MAX",SWIG_From_int(static_cast< int >(wxCURSOR_MAX)));
+  SWIG_Python_SetConstant(d, "Inside",SWIG_From_int(static_cast< int >(wxInside)));
+  SWIG_Python_SetConstant(d, "OutLeft",SWIG_From_int(static_cast< int >(wxOutLeft)));
+  SWIG_Python_SetConstant(d, "OutRight",SWIG_From_int(static_cast< int >(wxOutRight)));
+  SWIG_Python_SetConstant(d, "OutTop",SWIG_From_int(static_cast< int >(wxOutTop)));
+  SWIG_Python_SetConstant(d, "OutBottom",SWIG_From_int(static_cast< int >(wxOutBottom)));
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultPosition",DefaultPosition_get, DefaultPosition_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"DefaultSize",DefaultSize_get, DefaultSize_set);
   SWIG_Python_SetConstant(d, "FromStart",SWIG_From_int(static_cast< int >(wxFromStart)));
index 00cf81c853f77248dc0cb793ccc2abc32ce650d6..91eac93aefa6c1f1f71934c6baced49eb2bf621b 100644 (file)
@@ -4476,6 +4476,88 @@ _gdi_.DC_swigregister(DC)
 
 #---------------------------------------------------------------------------
 
+class DCTextColourChanger(object):
+    """
+    wx.DCTextColourChanger can be used to temporarily change the DC text
+    colour and restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Colour col) -> DCTextColourChanger
+
+        wx.DCTextColourChanger can be used to temporarily change the DC text
+        colour and restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCTextColourChanger_swiginit(self,_gdi_.new_DCTextColourChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCTextColourChanger
+    __del__ = lambda self : None;
+_gdi_.DCTextColourChanger_swigregister(DCTextColourChanger)
+
+class DCPenChanger(object):
+    """
+    wx.DCPenChanger can be used to temporarily change the DC pen and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Pen pen) -> DCPenChanger
+
+        wx.DCPenChanger can be used to temporarily change the DC pen and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCPenChanger_swiginit(self,_gdi_.new_DCPenChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCPenChanger
+    __del__ = lambda self : None;
+_gdi_.DCPenChanger_swigregister(DCPenChanger)
+
+class DCBrushChanger(object):
+    """
+    wx.DCBrushChanger can be used to temporarily change the DC brush and
+    restore it automatically when the object goes out of scope
+    """
+    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, DC dc, Brush brush) -> DCBrushChanger
+
+        wx.DCBrushChanger can be used to temporarily change the DC brush and
+        restore it automatically when the object goes out of scope
+        """
+        _gdi_.DCBrushChanger_swiginit(self,_gdi_.new_DCBrushChanger(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_DCBrushChanger
+    __del__ = lambda self : None;
+_gdi_.DCBrushChanger_swigregister(DCBrushChanger)
+
+class DCClipper(object):
+    """
+    wx.wxDCClipper sets the DC's clipping region when it is constructed,
+    and then automatically destroys the clipping region when the clipper
+    goes out of scope.
+    """
+    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): 
+        """
+        __init__(self, DC dc, Region r) -> DCClipper
+        __init__(self, DC dc, Rect r) -> DCClipper
+        __init__(self, DC dc, int x, int y, int w, int h) -> DCClipper
+
+        wx.wxDCClipper sets the DC's clipping region when it is constructed,
+        and then automatically destroys the clipping region when the clipper
+        goes out of scope.
+        """
+        _gdi_.DCClipper_swiginit(self,_gdi_.new_DCClipper(*args))
+    __swig_destroy__ = _gdi_.delete_DCClipper
+    __del__ = lambda self : None;
+_gdi_.DCClipper_swigregister(DCClipper)
+
+#---------------------------------------------------------------------------
+
 class MemoryDC(DC):
     """
     A memory device context provides a means to draw graphics onto a
@@ -4954,38 +5036,105 @@ _gdi_.PrinterDC_swigregister(PrinterDC)
 
 #---------------------------------------------------------------------------
 
-class GraphicsPath(object):
+class GraphicsObject(_core.Object):
+    """Proxy of C++ GraphicsObject 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, GraphicsRenderer renderer=None) -> GraphicsObject"""
+        _gdi_.GraphicsObject_swiginit(self,_gdi_.new_GraphicsObject(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsObject
+    __del__ = lambda self : None;
+    def IsNull(*args, **kwargs):
+        """IsNull(self) -> bool"""
+        return _gdi_.GraphicsObject_IsNull(*args, **kwargs)
+
+    def GetRenderer(*args, **kwargs):
+        """GetRenderer(self) -> GraphicsRenderer"""
+        return _gdi_.GraphicsObject_GetRenderer(*args, **kwargs)
+
+_gdi_.GraphicsObject_swigregister(GraphicsObject)
+
+class GraphicsPen(GraphicsObject):
+    """Proxy of C++ GraphicsPen 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) -> GraphicsPen"""
+        _gdi_.GraphicsPen_swiginit(self,_gdi_.new_GraphicsPen(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsPen
+    __del__ = lambda self : None;
+_gdi_.GraphicsPen_swigregister(GraphicsPen)
+
+class GraphicsBrush(GraphicsObject):
+    """Proxy of C++ GraphicsBrush 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) -> GraphicsBrush"""
+        _gdi_.GraphicsBrush_swiginit(self,_gdi_.new_GraphicsBrush(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsBrush
+    __del__ = lambda self : None;
+_gdi_.GraphicsBrush_swigregister(GraphicsBrush)
+
+class GraphicsFont(GraphicsObject):
+    """Proxy of C++ GraphicsFont 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) -> GraphicsFont"""
+        _gdi_.GraphicsFont_swiginit(self,_gdi_.new_GraphicsFont(*args, **kwargs))
+    __swig_destroy__ = _gdi_.delete_GraphicsFont
+    __del__ = lambda self : None;
+_gdi_.GraphicsFont_swigregister(GraphicsFont)
+
+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')
     def __init__(self): raise AttributeError, "No constructor defined"
     __repr__ = _swig_repr
     __swig_destroy__ = _gdi_.delete_GraphicsPath
     __del__ = lambda self : None;
-    def MoveToPoint(*args, **kwargs):
+    def Clone(*args, **kwargs):
+        """Clone(self) -> GraphicsPath"""
+        return _gdi_.GraphicsPath_Clone(*args, **kwargs)
+
+    def MoveToPoint(*args):
         """
         MoveToPoint(self, Double x, Double y)
+        MoveToPoint(self, Point2D p)
 
         Begins a new subpath at (x,y)
         """
-        return _gdi_.GraphicsPath_MoveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_MoveToPoint(*args)
 
-    def AddLineToPoint(*args, **kwargs):
+    def AddLineToPoint(*args):
         """
         AddLineToPoint(self, Double x, Double y)
+        AddLineToPoint(self, Point2D p)
 
         Adds a straight line from the current point to (x,y) 
         """
-        return _gdi_.GraphicsPath_AddLineToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddLineToPoint(*args)
 
-    def AddCurveToPoint(*args, **kwargs):
+    def AddCurveToPoint(*args):
         """
         AddCurveToPoint(self, Double cx1, Double cy1, Double cx2, Double cy2, Double x, 
             Double y)
+        AddCurveToPoint(self, Point2D c1, Point2D c2, Point2D e)
 
         Adds a cubic Bezier curve from the current point, using two control
         points and an end point
         """
-        return _gdi_.GraphicsPath_AddCurveToPoint(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddCurveToPoint(*args)
+
+    def AddPath(*args, **kwargs):
+        """
+        AddPath(self, GraphicsPath path)
+
+        adds another path
+        """
+        return _gdi_.GraphicsPath_AddPath(*args, **kwargs)
 
     def CloseSubpath(*args, **kwargs):
         """
@@ -5003,15 +5152,17 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_GetCurrentPoint(*args, **kwargs)
 
-    def AddArc(*args, **kwargs):
+    def AddArc(*args):
         """
         AddArc(self, Double x, Double y, Double r, Double startAngle, Double endAngle, 
             bool clockwise)
+        AddArc(self, Point2D c, Double r, Double startAngle, Double endAngle, 
+            bool clockwise)
 
         Adds an arc of a circle centering at (x,y) with radius (r) from
         startAngle to endAngle
         """
-        return _gdi_.GraphicsPath_AddArc(*args, **kwargs)
+        return _gdi_.GraphicsPath_AddArc(*args)
 
     def AddQuadCurveToPoint(*args, **kwargs):
         """
@@ -5047,9 +5198,179 @@ class GraphicsPath(object):
         """
         return _gdi_.GraphicsPath_AddArcToPoint(*args, **kwargs)
 
+    def AddEllipse(*args, **kwargs):
+        """
+        AddEllipse(self, Double x, Double y, Double w, Double h)
+
+        appends an ellipse
+        """
+        return _gdi_.GraphicsPath_AddEllipse(*args, **kwargs)
+
+    def AddRoundedRectangle(*args, **kwargs):
+        """
+        AddRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        appends a rounded rectangle
+        """
+        return _gdi_.GraphicsPath_AddRoundedRectangle(*args, **kwargs)
+
+    def GetNativePath(*args, **kwargs):
+        """
+        GetNativePath(self) -> void
+
+        returns the native path
+        """
+        return _gdi_.GraphicsPath_GetNativePath(*args, **kwargs)
+
+    def UnGetNativePath(*args, **kwargs):
+        """
+        UnGetNativePath(self, void p)
+
+        give the native path returned by GetNativePath() back (there might be some
+        deallocations necessary)
+        """
+        return _gdi_.GraphicsPath_UnGetNativePath(*args, **kwargs)
+
+    def Transform(*args, **kwargs):
+        """
+        Transform(self, GraphicsMatrix matrix)
+
+        transforms each point of this path by the matrix
+        """
+        return _gdi_.GraphicsPath_Transform(*args, **kwargs)
+
+    def GetBox(*args, **kwargs):
+        """
+        GetBox(self) -> wxRect2DDouble
+
+        gets the bounding box enclosing all points (possibly including control points)
+        """
+        return _gdi_.GraphicsPath_GetBox(*args, **kwargs)
+
+    def Contains(*args):
+        """
+        Contains(self, Double x, Double y, int fillStyle=WINDING_RULE) -> bool
+        Contains(self, wxPoint2DDouble c, int fillStyle=WINDING_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)
 
-class GraphicsContext(object):
+        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"""
     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"
@@ -5071,86 +5392,187 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
     CreateFromNative = staticmethod(CreateFromNative)
+    def CreateFromNativeWindow(*args, **kwargs):
+        """CreateFromNativeWindow(void window) -> GraphicsContext"""
+        return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+    CreateFromNativeWindow = staticmethod(CreateFromNativeWindow)
     def CreatePath(*args, **kwargs):
-        """CreatePath(self) -> GraphicsPath"""
+        """
+        CreatePath(self) -> GraphicsPath
+
+        creates a path instance that corresponds to the type of graphics context, ie GDIPlus, Cairo, CoreGraphics ...
+        """
         return _gdi_.GraphicsContext_CreatePath(*args, **kwargs)
 
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsContext_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsContext_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+
+        sets the brush to a linear gradient, starting at (x1,y1) with color c1
+        to (x2,y2) with color c2
+        """
+        return _gdi_.GraphicsContext_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+
+        sets the brush to a radial gradient originating at (xo,yc) with color
+        oColor and ends on a circle around (xc,yc) with radius r and color
+        cColor
+
+        """
+        return _gdi_.GraphicsContext_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """
+        CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont
+
+        sets the font
+        """
+        return _gdi_.GraphicsContext_CreateFont(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+
+        create a 'native' matrix corresponding to these values
+        """
+        return _gdi_.GraphicsContext_CreateMatrix(*args, **kwargs)
+
     def PushState(*args, **kwargs):
-        """PushState(self)"""
+        """
+        PushState(self)
+
+        push the current state of the context, ie the transformation matrix on a stack
+        """
         return _gdi_.GraphicsContext_PushState(*args, **kwargs)
 
     def PopState(*args, **kwargs):
-        """PopState(self)"""
+        """
+        PopState(self)
+
+        pops a stored state from the stack
+        """
         return _gdi_.GraphicsContext_PopState(*args, **kwargs)
 
     def ClipRegion(*args, **kwargs):
-        """ClipRegion(self, Region region)"""
+        """
+        ClipRegion(self, Region region)
+
+        clips drawings to the region
+        """
         return _gdi_.GraphicsContext_ClipRegion(*args, **kwargs)
 
     def Clip(*args, **kwargs):
-        """Clip(self, Double x, Double y, Double w, Double h)"""
+        """
+        Clip(self, Double x, Double y, Double w, Double h)
+
+        clips drawings to the rect
+        """
         return _gdi_.GraphicsContext_Clip(*args, **kwargs)
 
     def ResetClip(*args, **kwargs):
-        """ResetClip(self)"""
+        """
+        ResetClip(self)
+
+        resets the clipping to original extent
+        """
         return _gdi_.GraphicsContext_ResetClip(*args, **kwargs)
 
     def GetNativeContext(*args, **kwargs):
-        """GetNativeContext(self) -> void"""
+        """
+        GetNativeContext(self) -> void
+
+        returns the native context
+        """
         return _gdi_.GraphicsContext_GetNativeContext(*args, **kwargs)
 
     def Translate(*args, **kwargs):
-        """Translate(self, Double dx, Double dy)"""
+        """
+        Translate(self, Double dx, Double dy)
+
+        translate the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Translate(*args, **kwargs)
 
     def Scale(*args, **kwargs):
-        """Scale(self, Double xScale, Double yScale)"""
+        """
+        Scale(self, Double xScale, Double yScale)
+
+        scale the current transformation matrix CTM of the context
+        """
         return _gdi_.GraphicsContext_Scale(*args, **kwargs)
 
     def Rotate(*args, **kwargs):
-        """Rotate(self, Double angle)"""
-        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
-
-    def SetPen(*args, **kwargs):
-        """SetPen(self, Pen pen)"""
-        return _gdi_.GraphicsContext_SetPen(*args, **kwargs)
+        """
+        Rotate(self, Double angle)
 
-    def SetBrush(*args, **kwargs):
-        """SetBrush(self, Brush brush)"""
-        return _gdi_.GraphicsContext_SetBrush(*args, **kwargs)
+        rotate (radians) the current transformation matrix CTM of the context
+        """
+        return _gdi_.GraphicsContext_Rotate(*args, **kwargs)
 
-    def SetLinearGradientBrush(*args, **kwargs):
+    def SetPen(*args):
         """
-        SetLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
-            Colour c2)
+        SetPen(self, GraphicsPen pen)
+        SetPen(self, Pen pen)
+
+        sets the stroke pen
         """
-        return _gdi_.GraphicsContext_SetLinearGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetPen(*args)
 
-    def SetRadialGradientBrush(*args, **kwargs):
+    def SetBrush(*args):
         """
-        SetRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
-            Colour oColour, Colour cColour)
+        SetBrush(self, GraphicsBrush brush)
+        SetBrush(self, Brush brush)
+
+        sets the brush for filling
         """
-        return _gdi_.GraphicsContext_SetRadialGradientBrush(*args, **kwargs)
+        return _gdi_.GraphicsContext_SetBrush(*args)
 
-    def SetFont(*args, **kwargs):
-        """SetFont(self, Font font)"""
-        return _gdi_.GraphicsContext_SetFont(*args, **kwargs)
+    def SetFont(*args):
+        """
+        SetFont(self, GraphicsFont font)
+        SetFont(self, Font font, Colour colour=*wxBLACK)
 
-    def SetTextColour(*args, **kwargs):
-        """SetTextColour(self, Colour col)"""
-        return _gdi_.GraphicsContext_SetTextColour(*args, **kwargs)
+        sets the font
+        """
+        return _gdi_.GraphicsContext_SetFont(*args)
 
     def StrokePath(*args, **kwargs):
-        """StrokePath(self, GraphicsPath path)"""
+        """
+        StrokePath(self, GraphicsPath path)
+
+        strokes along a path with the current pen
+        """
         return _gdi_.GraphicsContext_StrokePath(*args, **kwargs)
 
     def FillPath(*args, **kwargs):
-        """FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        FillPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        fills a path with the current brush
+        """
         return _gdi_.GraphicsContext_FillPath(*args, **kwargs)
 
     def DrawPath(*args, **kwargs):
-        """DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)"""
+        """
+        DrawPath(self, GraphicsPath path, int fillStyle=WINDING_RULE)
+
+        draws a path by first filling and then stroking
+        """
         return _gdi_.GraphicsContext_DrawPath(*args, **kwargs)
 
     def DrawText(*args, **kwargs):
@@ -5182,33 +5604,69 @@ class GraphicsContext(object):
         return _gdi_.GraphicsContext_DrawIcon(*args, **kwargs)
 
     def StrokeLine(*args, **kwargs):
-        """StrokeLine(self, Double x1, Double y1, Double x2, Double y2)"""
+        """
+        StrokeLine(self, Double x1, Double y1, Double x2, Double y2)
+
+        strokes a single line
+        """
         return _gdi_.GraphicsContext_StrokeLine(*args, **kwargs)
 
     def StrokeLines(*args, **kwargs):
-        """StrokeLines(self, List points)"""
+        """
+        StrokeLines(self, List points)
+
+        stroke lines connecting each of the points
+        """
         return _gdi_.GraphicsContext_StrokeLines(*args, **kwargs)
 
     def StrokeLineSegements(*args, **kwargs):
-        """StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)"""
+        """
+        StrokeLineSegements(self, PyObject beginPoints, PyObject endPoints)
+
+        stroke disconnected lines from begin to end points
+        """
         return _gdi_.GraphicsContext_StrokeLineSegements(*args, **kwargs)
 
     def DrawLines(*args, **kwargs):
-        """DrawLines(self, size_t points, int fillStyle=WINDING_RULE)"""
+        """
+        DrawLines(self, size_t points, int fillStyle=WINDING_RULE)
+
+        draws a polygon
+        """
         return _gdi_.GraphicsContext_DrawLines(*args, **kwargs)
 
     def DrawRectangle(*args, **kwargs):
-        """DrawRectangle(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawRectangle(self, Double x, Double y, Double w, Double h)
+
+        draws a rectangle
+        """
         return _gdi_.GraphicsContext_DrawRectangle(*args, **kwargs)
 
     def DrawEllipse(*args, **kwargs):
-        """DrawEllipse(self, Double x, Double y, Double w, Double h)"""
+        """
+        DrawEllipse(self, Double x, Double y, Double w, Double h)
+
+        draws an ellipse
+        """
         return _gdi_.GraphicsContext_DrawEllipse(*args, **kwargs)
 
     def DrawRoundedRectangle(*args, **kwargs):
-        """DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)"""
+        """
+        DrawRoundedRectangle(self, Double x, Double y, Double w, Double h, Double radius)
+
+        draws a rounded rectangle
+        """
         return _gdi_.GraphicsContext_DrawRoundedRectangle(*args, **kwargs)
 
+    def ShouldOffset(*args, **kwargs):
+        """
+        ShouldOffset(self) -> bool
+
+        helper to determine if a 0.5 offset should be applied for the drawing operation
+        """
+        return _gdi_.GraphicsContext_ShouldOffset(*args, **kwargs)
+
 _gdi_.GraphicsContext_swigregister(GraphicsContext)
 
 def GraphicsContext_Create(*args):
@@ -5224,6 +5682,80 @@ def GraphicsContext_CreateFromNative(*args, **kwargs):
   """GraphicsContext_CreateFromNative(void context) -> GraphicsContext"""
   return _gdi_.GraphicsContext_CreateFromNative(*args, **kwargs)
 
+def GraphicsContext_CreateFromNativeWindow(*args, **kwargs):
+  """GraphicsContext_CreateFromNativeWindow(void window) -> GraphicsContext"""
+  return _gdi_.GraphicsContext_CreateFromNativeWindow(*args, **kwargs)
+
+class GraphicsRenderer(_core.Object):
+    """Proxy of C++ GraphicsRenderer 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_GraphicsRenderer
+    __del__ = lambda self : None;
+    def GetDefaultRenderer(*args, **kwargs):
+        """GetDefaultRenderer() -> GraphicsRenderer"""
+        return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args, **kwargs)
+
+    GetDefaultRenderer = staticmethod(GetDefaultRenderer)
+    def CreateContext(*args):
+        """
+        CreateContext(self, WindowDC dc) -> GraphicsContext
+        CreateContext(self, Window window) -> GraphicsContext
+        """
+        return _gdi_.GraphicsRenderer_CreateContext(*args)
+
+    def CreateContextFromNativeContext(*args, **kwargs):
+        """CreateContextFromNativeContext(self, void context) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeContext(*args, **kwargs)
+
+    def CreateContextFromNativeWindow(*args, **kwargs):
+        """CreateContextFromNativeWindow(self, void window) -> GraphicsContext"""
+        return _gdi_.GraphicsRenderer_CreateContextFromNativeWindow(*args, **kwargs)
+
+    def CreatePath(*args, **kwargs):
+        """CreatePath(self) -> GraphicsPath"""
+        return _gdi_.GraphicsRenderer_CreatePath(*args, **kwargs)
+
+    def CreateMatrix(*args, **kwargs):
+        """
+        CreateMatrix(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) -> GraphicsMatrix
+        """
+        return _gdi_.GraphicsRenderer_CreateMatrix(*args, **kwargs)
+
+    def CreatePen(*args, **kwargs):
+        """CreatePen(self, Pen pen) -> GraphicsPen"""
+        return _gdi_.GraphicsRenderer_CreatePen(*args, **kwargs)
+
+    def CreateBrush(*args, **kwargs):
+        """CreateBrush(self, Brush brush) -> GraphicsBrush"""
+        return _gdi_.GraphicsRenderer_CreateBrush(*args, **kwargs)
+
+    def CreateLinearGradientBrush(*args, **kwargs):
+        """
+        CreateLinearGradientBrush(self, Double x1, Double y1, Double x2, Double y2, Colour c1, 
+            Colour c2) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateLinearGradientBrush(*args, **kwargs)
+
+    def CreateRadialGradientBrush(*args, **kwargs):
+        """
+        CreateRadialGradientBrush(self, Double xo, Double yo, Double xc, Double yc, Double radius, 
+            Colour oColor, Colour cColor) -> GraphicsBrush
+        """
+        return _gdi_.GraphicsRenderer_CreateRadialGradientBrush(*args, **kwargs)
+
+    def CreateFont(*args, **kwargs):
+        """CreateFont(self, Font font, Colour col=*wxBLACK) -> GraphicsFont"""
+        return _gdi_.GraphicsRenderer_CreateFont(*args, **kwargs)
+
+_gdi_.GraphicsRenderer_swigregister(GraphicsRenderer)
+
+def GraphicsRenderer_GetDefaultRenderer(*args):
+  """GraphicsRenderer_GetDefaultRenderer() -> GraphicsRenderer"""
+  return _gdi_.GraphicsRenderer_GetDefaultRenderer(*args)
+
 class GCDC(DC):
     """Proxy of C++ GCDC class"""
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
@@ -5555,7 +6087,6 @@ class GDIObjListBase(object):
     __swig_destroy__ = _gdi_.delete_GDIObjListBase
     __del__ = lambda self : None;
 _gdi_.GDIObjListBase_swigregister(GDIObjListBase)
-cvar = _gdi_.cvar
 NullBitmap = cvar.NullBitmap
 NullIcon = cvar.NullIcon
 NullCursor = cvar.NullCursor
index a0a646cddc6b0643f4c50e7207d202a4277a4873..d1cb49c9a85df3e672aa3a3000b7586925364672 100644 (file)
@@ -2500,129 +2500,141 @@ SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags)
 #define SWIGTYPE_p_wxControlWithItems swig_types[34]
 #define SWIGTYPE_p_wxCursor swig_types[35]
 #define SWIGTYPE_p_wxDC swig_types[36]
-#define SWIGTYPE_p_wxDCOverlay swig_types[37]
-#define SWIGTYPE_p_wxDash swig_types[38]
-#define SWIGTYPE_p_wxDateEvent swig_types[39]
-#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[40]
-#define SWIGTYPE_p_wxDropFilesEvent swig_types[41]
-#define SWIGTYPE_p_wxDuplexMode swig_types[42]
-#define SWIGTYPE_p_wxEffects swig_types[43]
-#define SWIGTYPE_p_wxEncodingConverter swig_types[44]
-#define SWIGTYPE_p_wxEraseEvent swig_types[45]
-#define SWIGTYPE_p_wxEvent swig_types[46]
-#define SWIGTYPE_p_wxEvtHandler swig_types[47]
-#define SWIGTYPE_p_wxFSFile swig_types[48]
-#define SWIGTYPE_p_wxFileSystem swig_types[49]
-#define SWIGTYPE_p_wxFlexGridSizer swig_types[50]
-#define SWIGTYPE_p_wxFocusEvent swig_types[51]
-#define SWIGTYPE_p_wxFont swig_types[52]
-#define SWIGTYPE_p_wxFontList swig_types[53]
-#define SWIGTYPE_p_wxFontMapper swig_types[54]
-#define SWIGTYPE_p_wxGBSizerItem swig_types[55]
-#define SWIGTYPE_p_wxGCDC swig_types[56]
-#define SWIGTYPE_p_wxGDIObjListBase swig_types[57]
-#define SWIGTYPE_p_wxGDIObject swig_types[58]
-#define SWIGTYPE_p_wxGIFHandler swig_types[59]
-#define SWIGTYPE_p_wxGraphicsContext swig_types[60]
-#define SWIGTYPE_p_wxGraphicsPath swig_types[61]
-#define SWIGTYPE_p_wxGridBagSizer swig_types[62]
-#define SWIGTYPE_p_wxGridSizer swig_types[63]
-#define SWIGTYPE_p_wxHeaderButtonParams swig_types[64]
-#define SWIGTYPE_p_wxICOHandler swig_types[65]
-#define SWIGTYPE_p_wxIcon swig_types[66]
-#define SWIGTYPE_p_wxIconBundle swig_types[67]
-#define SWIGTYPE_p_wxIconLocation swig_types[68]
-#define SWIGTYPE_p_wxIconizeEvent swig_types[69]
-#define SWIGTYPE_p_wxIdleEvent swig_types[70]
-#define SWIGTYPE_p_wxImage swig_types[71]
-#define SWIGTYPE_p_wxImageHandler swig_types[72]
-#define SWIGTYPE_p_wxImageList swig_types[73]
-#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[74]
-#define SWIGTYPE_p_wxInitDialogEvent swig_types[75]
-#define SWIGTYPE_p_wxJPEGHandler swig_types[76]
-#define SWIGTYPE_p_wxKeyEvent swig_types[77]
-#define SWIGTYPE_p_wxLanguageInfo swig_types[78]
-#define SWIGTYPE_p_wxLayoutConstraints swig_types[79]
-#define SWIGTYPE_p_wxLocale swig_types[80]
-#define SWIGTYPE_p_wxMask swig_types[81]
-#define SWIGTYPE_p_wxMaximizeEvent swig_types[82]
-#define SWIGTYPE_p_wxMemoryDC swig_types[83]
-#define SWIGTYPE_p_wxMenu swig_types[84]
-#define SWIGTYPE_p_wxMenuBar swig_types[85]
-#define SWIGTYPE_p_wxMenuEvent swig_types[86]
-#define SWIGTYPE_p_wxMenuItem swig_types[87]
-#define SWIGTYPE_p_wxMetaFile swig_types[88]
-#define SWIGTYPE_p_wxMetaFileDC swig_types[89]
-#define SWIGTYPE_p_wxMirrorDC swig_types[90]
-#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[91]
-#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[92]
-#define SWIGTYPE_p_wxMouseEvent swig_types[93]
-#define SWIGTYPE_p_wxMoveEvent swig_types[94]
-#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[95]
-#define SWIGTYPE_p_wxNativeFontInfo swig_types[96]
-#define SWIGTYPE_p_wxNativePixelData swig_types[97]
-#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[98]
-#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[99]
-#define SWIGTYPE_p_wxNcPaintEvent swig_types[100]
-#define SWIGTYPE_p_wxNotifyEvent swig_types[101]
-#define SWIGTYPE_p_wxObject swig_types[102]
-#define SWIGTYPE_p_wxOverlay swig_types[103]
-#define SWIGTYPE_p_wxPCXHandler swig_types[104]
-#define SWIGTYPE_p_wxPNGHandler swig_types[105]
-#define SWIGTYPE_p_wxPNMHandler swig_types[106]
-#define SWIGTYPE_p_wxPaintDC swig_types[107]
-#define SWIGTYPE_p_wxPaintEvent swig_types[108]
-#define SWIGTYPE_p_wxPalette swig_types[109]
-#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[110]
-#define SWIGTYPE_p_wxPaperSize swig_types[111]
-#define SWIGTYPE_p_wxPen swig_types[112]
-#define SWIGTYPE_p_wxPenList swig_types[113]
-#define SWIGTYPE_p_wxPixelDataBase swig_types[114]
-#define SWIGTYPE_p_wxPoint swig_types[115]
-#define SWIGTYPE_p_wxPoint2D swig_types[116]
-#define SWIGTYPE_p_wxPostScriptDC swig_types[117]
-#define SWIGTYPE_p_wxPrintData swig_types[118]
-#define SWIGTYPE_p_wxPrinterDC swig_types[119]
-#define SWIGTYPE_p_wxPseudoDC swig_types[120]
-#define SWIGTYPE_p_wxPyApp swig_types[121]
-#define SWIGTYPE_p_wxPyCommandEvent swig_types[122]
-#define SWIGTYPE_p_wxPyEvent swig_types[123]
-#define SWIGTYPE_p_wxPyFontEnumerator swig_types[124]
-#define SWIGTYPE_p_wxPyImageHandler swig_types[125]
-#define SWIGTYPE_p_wxPyLocale swig_types[126]
-#define SWIGTYPE_p_wxPySizer swig_types[127]
-#define SWIGTYPE_p_wxPyValidator swig_types[128]
-#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[129]
-#define SWIGTYPE_p_wxRect swig_types[130]
-#define SWIGTYPE_p_wxRegion swig_types[131]
-#define SWIGTYPE_p_wxRegionIterator swig_types[132]
-#define SWIGTYPE_p_wxRendererNative swig_types[133]
-#define SWIGTYPE_p_wxRendererVersion swig_types[134]
-#define SWIGTYPE_p_wxScreenDC swig_types[135]
-#define SWIGTYPE_p_wxScrollEvent swig_types[136]
-#define SWIGTYPE_p_wxScrollWinEvent swig_types[137]
-#define SWIGTYPE_p_wxSetCursorEvent swig_types[138]
-#define SWIGTYPE_p_wxShowEvent swig_types[139]
-#define SWIGTYPE_p_wxSize swig_types[140]
-#define SWIGTYPE_p_wxSizeEvent swig_types[141]
-#define SWIGTYPE_p_wxSizer swig_types[142]
-#define SWIGTYPE_p_wxSizerItem swig_types[143]
-#define SWIGTYPE_p_wxSplitterRenderParams swig_types[144]
-#define SWIGTYPE_p_wxStaticBoxSizer swig_types[145]
-#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[146]
-#define SWIGTYPE_p_wxStockGDI swig_types[147]
-#define SWIGTYPE_p_wxString swig_types[148]
-#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[149]
-#define SWIGTYPE_p_wxTIFFHandler swig_types[150]
-#define SWIGTYPE_p_wxUpdateUIEvent swig_types[151]
-#define SWIGTYPE_p_wxValidator swig_types[152]
-#define SWIGTYPE_p_wxWindow swig_types[153]
-#define SWIGTYPE_p_wxWindowCreateEvent swig_types[154]
-#define SWIGTYPE_p_wxWindowDC swig_types[155]
-#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[156]
-#define SWIGTYPE_p_wxXPMHandler swig_types[157]
-static swig_type_info *swig_types[159];
-static swig_module_info swig_module = {swig_types, 158, 0, 0, 0, 0};
+#define SWIGTYPE_p_wxDCBrushChanger swig_types[37]
+#define SWIGTYPE_p_wxDCClipper swig_types[38]
+#define SWIGTYPE_p_wxDCOverlay swig_types[39]
+#define SWIGTYPE_p_wxDCPenChanger swig_types[40]
+#define SWIGTYPE_p_wxDCTextColourChanger swig_types[41]
+#define SWIGTYPE_p_wxDash swig_types[42]
+#define SWIGTYPE_p_wxDateEvent swig_types[43]
+#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[44]
+#define SWIGTYPE_p_wxDropFilesEvent swig_types[45]
+#define SWIGTYPE_p_wxDuplexMode swig_types[46]
+#define SWIGTYPE_p_wxEffects swig_types[47]
+#define SWIGTYPE_p_wxEncodingConverter swig_types[48]
+#define SWIGTYPE_p_wxEraseEvent swig_types[49]
+#define SWIGTYPE_p_wxEvent swig_types[50]
+#define SWIGTYPE_p_wxEvtHandler swig_types[51]
+#define SWIGTYPE_p_wxFSFile swig_types[52]
+#define SWIGTYPE_p_wxFileSystem swig_types[53]
+#define SWIGTYPE_p_wxFlexGridSizer swig_types[54]
+#define SWIGTYPE_p_wxFocusEvent swig_types[55]
+#define SWIGTYPE_p_wxFont swig_types[56]
+#define SWIGTYPE_p_wxFontList swig_types[57]
+#define SWIGTYPE_p_wxFontMapper swig_types[58]
+#define SWIGTYPE_p_wxGBSizerItem swig_types[59]
+#define SWIGTYPE_p_wxGCDC swig_types[60]
+#define SWIGTYPE_p_wxGDIObjListBase swig_types[61]
+#define SWIGTYPE_p_wxGDIObject swig_types[62]
+#define SWIGTYPE_p_wxGIFHandler swig_types[63]
+#define SWIGTYPE_p_wxGraphicsBrush swig_types[64]
+#define SWIGTYPE_p_wxGraphicsContext swig_types[65]
+#define SWIGTYPE_p_wxGraphicsFont swig_types[66]
+#define SWIGTYPE_p_wxGraphicsMatrix swig_types[67]
+#define SWIGTYPE_p_wxGraphicsObject swig_types[68]
+#define SWIGTYPE_p_wxGraphicsPath swig_types[69]
+#define SWIGTYPE_p_wxGraphicsPen swig_types[70]
+#define SWIGTYPE_p_wxGraphicsRenderer swig_types[71]
+#define SWIGTYPE_p_wxGridBagSizer swig_types[72]
+#define SWIGTYPE_p_wxGridSizer swig_types[73]
+#define SWIGTYPE_p_wxHeaderButtonParams swig_types[74]
+#define SWIGTYPE_p_wxICOHandler swig_types[75]
+#define SWIGTYPE_p_wxIcon swig_types[76]
+#define SWIGTYPE_p_wxIconBundle swig_types[77]
+#define SWIGTYPE_p_wxIconLocation swig_types[78]
+#define SWIGTYPE_p_wxIconizeEvent swig_types[79]
+#define SWIGTYPE_p_wxIdleEvent swig_types[80]
+#define SWIGTYPE_p_wxImage swig_types[81]
+#define SWIGTYPE_p_wxImageHandler swig_types[82]
+#define SWIGTYPE_p_wxImageList swig_types[83]
+#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[84]
+#define SWIGTYPE_p_wxInitDialogEvent swig_types[85]
+#define SWIGTYPE_p_wxJPEGHandler swig_types[86]
+#define SWIGTYPE_p_wxKeyEvent swig_types[87]
+#define SWIGTYPE_p_wxLanguageInfo swig_types[88]
+#define SWIGTYPE_p_wxLayoutConstraints swig_types[89]
+#define SWIGTYPE_p_wxLocale swig_types[90]
+#define SWIGTYPE_p_wxMask swig_types[91]
+#define SWIGTYPE_p_wxMaximizeEvent swig_types[92]
+#define SWIGTYPE_p_wxMemoryDC swig_types[93]
+#define SWIGTYPE_p_wxMenu swig_types[94]
+#define SWIGTYPE_p_wxMenuBar swig_types[95]
+#define SWIGTYPE_p_wxMenuEvent swig_types[96]
+#define SWIGTYPE_p_wxMenuItem swig_types[97]
+#define SWIGTYPE_p_wxMetaFile swig_types[98]
+#define SWIGTYPE_p_wxMetaFileDC swig_types[99]
+#define SWIGTYPE_p_wxMirrorDC swig_types[100]
+#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[101]
+#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[102]
+#define SWIGTYPE_p_wxMouseEvent swig_types[103]
+#define SWIGTYPE_p_wxMoveEvent swig_types[104]
+#define SWIGTYPE_p_wxNativeEncodingInfo swig_types[105]
+#define SWIGTYPE_p_wxNativeFontInfo swig_types[106]
+#define SWIGTYPE_p_wxNativePixelData swig_types[107]
+#define SWIGTYPE_p_wxNativePixelData_Accessor swig_types[108]
+#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[109]
+#define SWIGTYPE_p_wxNcPaintEvent swig_types[110]
+#define SWIGTYPE_p_wxNotifyEvent swig_types[111]
+#define SWIGTYPE_p_wxObject swig_types[112]
+#define SWIGTYPE_p_wxOverlay swig_types[113]
+#define SWIGTYPE_p_wxPCXHandler swig_types[114]
+#define SWIGTYPE_p_wxPNGHandler swig_types[115]
+#define SWIGTYPE_p_wxPNMHandler swig_types[116]
+#define SWIGTYPE_p_wxPaintDC swig_types[117]
+#define SWIGTYPE_p_wxPaintEvent swig_types[118]
+#define SWIGTYPE_p_wxPalette swig_types[119]
+#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[120]
+#define SWIGTYPE_p_wxPaperSize swig_types[121]
+#define SWIGTYPE_p_wxPen swig_types[122]
+#define SWIGTYPE_p_wxPenList swig_types[123]
+#define SWIGTYPE_p_wxPixelDataBase swig_types[124]
+#define SWIGTYPE_p_wxPoint swig_types[125]
+#define SWIGTYPE_p_wxPoint2D swig_types[126]
+#define SWIGTYPE_p_wxPoint2DDouble swig_types[127]
+#define SWIGTYPE_p_wxPostScriptDC swig_types[128]
+#define SWIGTYPE_p_wxPrintData swig_types[129]
+#define SWIGTYPE_p_wxPrinterDC swig_types[130]
+#define SWIGTYPE_p_wxPseudoDC swig_types[131]
+#define SWIGTYPE_p_wxPyApp swig_types[132]
+#define SWIGTYPE_p_wxPyCommandEvent swig_types[133]
+#define SWIGTYPE_p_wxPyEvent swig_types[134]
+#define SWIGTYPE_p_wxPyFontEnumerator swig_types[135]
+#define SWIGTYPE_p_wxPyImageHandler swig_types[136]
+#define SWIGTYPE_p_wxPyLocale swig_types[137]
+#define SWIGTYPE_p_wxPySizer swig_types[138]
+#define SWIGTYPE_p_wxPyValidator swig_types[139]
+#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[140]
+#define SWIGTYPE_p_wxRect swig_types[141]
+#define SWIGTYPE_p_wxRect2DDouble swig_types[142]
+#define SWIGTYPE_p_wxRegion swig_types[143]
+#define SWIGTYPE_p_wxRegionIterator swig_types[144]
+#define SWIGTYPE_p_wxRendererNative swig_types[145]
+#define SWIGTYPE_p_wxRendererVersion swig_types[146]
+#define SWIGTYPE_p_wxScreenDC swig_types[147]
+#define SWIGTYPE_p_wxScrollEvent swig_types[148]
+#define SWIGTYPE_p_wxScrollWinEvent swig_types[149]
+#define SWIGTYPE_p_wxSetCursorEvent swig_types[150]
+#define SWIGTYPE_p_wxShowEvent swig_types[151]
+#define SWIGTYPE_p_wxSize swig_types[152]
+#define SWIGTYPE_p_wxSizeEvent swig_types[153]
+#define SWIGTYPE_p_wxSizer swig_types[154]
+#define SWIGTYPE_p_wxSizerItem swig_types[155]
+#define SWIGTYPE_p_wxSplitterRenderParams swig_types[156]
+#define SWIGTYPE_p_wxStaticBoxSizer swig_types[157]
+#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[158]
+#define SWIGTYPE_p_wxStockGDI swig_types[159]
+#define SWIGTYPE_p_wxString swig_types[160]
+#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[161]
+#define SWIGTYPE_p_wxTIFFHandler swig_types[162]
+#define SWIGTYPE_p_wxUpdateUIEvent swig_types[163]
+#define SWIGTYPE_p_wxValidator swig_types[164]
+#define SWIGTYPE_p_wxWindow swig_types[165]
+#define SWIGTYPE_p_wxWindowCreateEvent swig_types[166]
+#define SWIGTYPE_p_wxWindowDC swig_types[167]
+#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[168]
+#define SWIGTYPE_p_wxXPMHandler swig_types[169]
+static swig_type_info *swig_types[171];
+static swig_module_info swig_module = {swig_types, 170, 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)
 
@@ -3541,104 +3553,253 @@ static void wxDC_GetBoundingBox(wxDC* dc, int* x1, int* y1, int* x2, int* y2) {
 
 
 #if !wxUSE_GRAPHICS_CONTEXT
-// C++ stub classes for platforms that don't have wxGraphicsContext yet.
+// C++ stub classes for platforms or build configurations that don't have
+// wxGraphicsContext yet.
 
-class wxGraphicsPath
+
+class wxGraphicsObject : public wxObject
 {
 public :
-    wxGraphicsPath() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    wxGraphicsObject( wxGraphicsRenderer*  ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsObject is not available on this platform.");
+    }
+    wxGraphicsObject( const wxGraphicsObject&  ) {}
+    virtual ~wxGraphicsObject() {}
+    bool IsNull() const { return false; }
+    wxGraphicsRenderer* GetRenderer() const { return NULL; }
+} ;
+
+
+
+class wxGraphicsPen : public wxGraphicsObject
+{
+    wxGraphicsPen()  {}
+    virtual ~wxGraphicsPen() {}
+} ;
+wxGraphicsPen wxNullGraphicsPen;
+
+
+
+class wxGraphicsBrush : public wxGraphicsObject
+{
+public :
+    wxGraphicsBrush() {}
+    virtual ~wxGraphicsBrush() {}
+} ;
+wxGraphicsBrush wxNullGraphicsBrush;
+
+
+
+class wxGraphicsFont : public wxGraphicsObject
+{
+public :
+    wxGraphicsFont() {}
+    virtual ~wxGraphicsFont() {}
+} ;
+wxGraphicsFont wxNullGraphicsFont;
+
+
+
+class wxGraphicsPath : public wxGraphicsObject
+{
+public :
+    wxGraphicsPath(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsPath is not available on this platform.");
     }
     virtual ~wxGraphicsPath() {}
-    
+
+    virtual wxGraphicsPath *Clone() const { return NULL; }
+
     void MoveToPoint( wxDouble, wxDouble ) {}
-    void AddLineToPoint( wxDouble, wxDouble ) {} 
+    void MoveToPoint( const wxPoint2DDouble& ) {}
+    void AddLineToPoint( wxDouble, wxDouble ) {}
+    void AddLineToPoint( const wxPoint2DDouble& ) {}
     void AddCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, wxDouble ) {}
+    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
+    void AddPath( const wxGraphicsPath* ) {}
     void CloseSubpath() {}
     void GetCurrentPoint( wxDouble&, wxDouble&) {}
+    wxPoint2DDouble GetCurrentPoint() { reutrn wxPoint2D(0,0); }
     void AddArc( wxDouble, wxDouble, wxDouble, wxDouble, wxDouble, bool ) {}
+    void AddArc( const wxPoint2DDouble& , wxDouble, wxDouble , wxDouble , bool ) {}
 
     void AddQuadCurveToPoint( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddRectangle( wxDouble, wxDouble, wxDouble, wxDouble ) {}
     void AddCircle( wxDouble, wxDouble, wxDouble ) {}
     void AddArcToPoint( wxDouble, wxDouble , wxDouble, wxDouble, wxDouble )  {}
 
-    wxPoint2DDouble GetCurrentPoint() { return wxPoint2DDouble(0,0); }
-    void MoveToPoint( const wxPoint2DDouble& ) {}
-    void AddLineToPoint( const wxPoint2DDouble&) {}
-    void AddCurveToPoint( const wxPoint2DDouble&, const wxPoint2DDouble&, const wxPoint2DDouble&) {}
-    void AddArc( const wxPoint2DDouble&, wxDouble, wxDouble, wxDouble, bool) {}
+    void AddEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void AddRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    void * GetNativePath() const { return NULL; }
+    void UnGetNativePath(void *) {}
+    void Transform( wxGraphicsMatrix* ) {}
+    void GetBox(wxDouble *, wxDouble *, wxDouble *, wxDouble *) {}
+    wxRect2D GetBox() { return wxRect2D(0,0,0,0); }
+
+    bool Contains( wxDouble , wxDouble , int ) { return false; }
+    bool Contains( const wxPoint2DDouble& , int ) { return false; }
+};
+
+
+class wxGraphicsMatrix : public wxGraphicsObject
+{
+public :
+    wxGraphicsMatrix(wxGraphicsRenderer* ) {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "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 ,
+                     wxDouble , wxDouble ) {}
+    virtual void Invert() {}
+    virtual bool IsEqual( const wxGraphicsMatrix* t) const  {}
+    virtual bool IsIdentity() { return false; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble  ) {}
+    virtual void Rotate( wxDouble  ) {}
+    virtual void TransformPoint( wxDouble *, wxDouble * ) {}
+    virtual void TransformDistance( wxDouble *, wxDouble * ) {}
+    virtual void * GetNativeMatrix() const { return NULL; }
 };
 
 
-class wxGraphicsContext
+
+class wxGraphicsContext : public wxGraphicsObject
 {
 public:
-    wxGraphicsContext() {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    wxGraphicsContext(wxGraphicsRenderer* ) {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
+                        "wx.GraphicsContext is not available on this platform.");
     }
+
     virtual ~wxGraphicsContext() {}
-    
-    static wxGraphicsContext* Create( const wxWindowDC&) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+
+    static wxGraphicsContext* Create( const wxWindowDC& )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsPath is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
+                        "wx.GraphicsContext is not available on this platform.");
     }
 
-    static wxGraphicsContext* CreateFromNative( void *  ) {
-        wxPyBlock_t blocked = wxPyBeginBlockThreads();
+    static wxGraphicsContext* CreateFromNative( void *  )  {
         PyErr_SetString(PyExc_NotImplementedError,
-                        "wxGraphicsContext is not available on this platform.");
-        wxPyEndBlockThreads(blocked);
-        return NULL;
-    }        
+                        "wx.GraphicsContext is not available on this platform.");
+    }
 
-    wxGraphicsPath * CreatePath() { return NULL; }
-    void PushState() {}
-    void PopState() {}
-    void Clip( const wxRegion & ) {}
-    void Clip( wxDouble, wxDouble, wxDouble, wxDouble ) {}
-    void ResetClip() {}
-    void * GetNativeContext() { return NULL; }
-    void Translate( wxDouble  , wxDouble  ) {}
-    void Scale( wxDouble  , wxDouble  ) {}
-    void Rotate( wxDouble  ) {}
-    void SetPen( const wxPen & ) {}
-    void SetBrush( const wxBrush & ) {}
-    void SetLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , 
-        const wxColour&, const wxColour&) {}
-    void SetRadialGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
-        const wxColour &, const wxColour &) {}
-    void SetFont( const wxFont & ) {}
-    void SetTextColour( const wxColour & ) {}
-    void StrokePath( const wxGraphicsPath * ) {}
-    void FillPath( const wxGraphicsPath *, int  ) {}
-    void DrawPath( const wxGraphicsPath *, int  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble  ) {}
-    void DrawText( const wxString &, wxDouble , wxDouble , wxDouble  ) {}
-    void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
-                        wxDouble *, wxDouble * ) const {}
-    void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const {}
-    void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  ) {}
-    void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *) {}
-    void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
-    void DrawLines( size_t , const wxPoint2DDouble *, int  ) {}
-    void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
-    void DrawEllipse( wxDouble , wxDouble,  wxDouble , wxDouble) {}
-    void DrawRoundedRectangle( wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    static wxGraphicsContext* CreateFromNativeWindow( void *  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    static wxGraphicsContext* Create( wxWindow*  )  {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsContext is not available on this platform.");
+    }
+
+    wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return NULL; }
+
+    virtual wxGraphicsBrush CreateBrush(const wxBrush& ) { return NULL; }
+
+    virtual wxGraphicsBrush CreateLinearGradientBrush( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                        const wxColour&, const wxColour&) { return NULL; }
+
+    virtual wxGraphicsBrush CreateRadialGradientBrush( wxDouble xo, wxDouble yo,
+                                                        wxDouble xc, wxDouble yc, wxDouble radius,
+                                                        const wxColour &oColor, const wxColour &cColor) { return NULL; }
+
+    virtual wxGraphicsFont CreateFont( const wxFont &, const wxColour & )  { return NULL; }
+
+    virtual wxGraphicsMatrix* CreateMatrix( wxDouble, wxDouble, wxDouble, wxDouble,
+                                            wxDouble, wxDouble)  { return NULL; }
+
+    virtual void PushState() {}
+    virtual void PopState() {}
+    virtual void Clip( const wxRegion & ) {}
+    virtual void Clip( wxDouble , wxDouble , wxDouble , wxDouble  ) {}
+    virtual void ResetClip() {}
+    virtual void * GetNativeContext() { return NULL; }
+    virtual void Translate( wxDouble , wxDouble ) {}
+    virtual void Scale( wxDouble , wxDouble ) {}
+    virtual void Rotate( wxDouble ) {}
+    virtual void ConcatTransform( const wxGraphicsMatrix* ) {}
+    virtual void SetTransform( const wxGraphicsMatrix* ) {}
+    virtual void GetTransform( wxGraphicsMatrix* ) {}
+
+    virtual void SetPen( const wxGraphicsPen& ) {}
+    void SetPen( const wxPen& ) {}
+
+    virtual void SetBrush( const wxGraphicsBrush& ) {}
+    void SetBrush( const wxBrush& ) {}
+
+    virtual void SetFont( const wxGraphicsFont& ) {}
+    void SetFont( const wxFont&, const wxColour& ) {}
+
+    virtual void StrokePath( const wxGraphicsPath * ) {}
+    virtual void FillPath( const wxGraphicsPath *, int ) {}
+    virtual void DrawPath( const wxGraphicsPath *, int ) {}
+
+    virtual void DrawText( const wxString &, wxDouble , wxDouble  )  {}
+    virtual void DrawText( const wxString &, wxDouble , wxDouble , wxDouble ) {}
+    virtual void GetTextExtent( const wxString &, wxDouble *, wxDouble *,
+                                wxDouble *, wxDouble * ) const {}
+    virtual void GetPartialTextExtents(const wxString& , wxArrayDouble& ) const  {}
+
+    virtual void DrawBitmap( const wxBitmap &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+    virtual void DrawIcon( const wxIcon &, wxDouble , wxDouble , wxDouble , wxDouble  )  {}
+
+    virtual void StrokeLine( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *) {}
+    virtual void StrokeLines( size_t , const wxPoint2DDouble *, const wxPoint2DDouble *) {}
+    virtual void DrawLines( size_t , const wxPoint2DDouble *, int ) {}
+    virtual void DrawRectangle( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawEllipse( wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual void DrawRoundedRectangle( wxDouble  wxDouble , wxDouble , wxDouble , wxDouble ) {}
+    virtual bool ShouldOffset() const { return false; }
+};
+
+
+class wxGraphicsRenderer : public wxObject
+{
+public :
+    wxGraphicsRenderer() {
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    }
+
+    virtual ~wxGraphicsRenderer() {}
+
+    static wxGraphicsRenderer* GetDefaultRenderer(
+        PyErr_SetString(PyExc_NotImplementedError,
+                        "wx.GraphicsRenderer is not available on this platform.");
+    );
+
+    virtual wxGraphicsContext * CreateContext( const wxWindowDC& ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeContext( void *  ) { return NULL; }
+    virtual wxGraphicsContext * CreateContextFromNativeWindow( void *  )  { return NULL; }
+    virtual wxGraphicsContext * CreateContext( wxWindow*  ) { return NULL; }
+
+    virtual wxGraphicsPath * CreatePath()  { return NULL; }
+
+    virtual wxGraphicsMatrix * CreateMatrix( wxDouble , wxDouble , wxDouble , wxDouble ,
+                                             wxDouble , wxDouble ) { return NULL; }
+
+    virtual wxGraphicsPen CreatePen(const wxPen& )  { return wxNullGaphicsPen; }
+    virtual wxGraphicsBrush CreateBrush(const wxBrush&  )  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateLinearGradientBrush(xDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour&, const wxColour&)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsBrush CreateRadialGradientBrush(wxDouble , wxDouble , wxDouble , wxDouble , wxDouble ,
+                                                      const wxColour &, const wxColour &)  { return wxNullGaphicsBrush; }
+    virtual wxGraphicsFont CreateFont( const wxFont & , const wxColour & ) { return wxNullGaphicsFont; }
 };
 
 
+
 class wxGCDC: public wxWindowDC
 {
 public:
@@ -3648,14 +3809,14 @@ public:
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
      }
-    
+
     wxGCDC() {
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         PyErr_SetString(PyExc_NotImplementedError,
                         "wxGCDC is not available on this platform.");
         wxPyEndBlockThreads(blocked);
     }
-    
+
     virtual ~wxGCDC() {}
 
     wxGraphicsContext* GetGraphicsContext() { return NULL; }
@@ -23817,6 +23978,458 @@ SWIGINTERN PyObject *DC_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *a
   return SWIG_Py_Void();
 }
 
+SWIGINTERN PyObject *_wrap_new_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxColour *arg2 = 0 ;
+  wxDCTextColourChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxColour temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCTextColourChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCTextColourChanger *)new wxDCTextColourChanger(*arg1,(wxColour const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCTextColourChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCTextColourChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCTextColourChanger *arg1 = (wxDCTextColourChanger *) 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_wxDCTextColourChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCTextColourChanger" "', expected argument " "1"" of type '" "wxDCTextColourChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCTextColourChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCTextColourChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCTextColourChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCTextColourChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxPen *arg2 = 0 ;
+  wxDCPenChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCPenChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCPenChanger" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCPenChanger *)new wxDCPenChanger(*arg1,(wxPen const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCPenChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCPenChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCPenChanger *arg1 = (wxDCPenChanger *) 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_wxDCPenChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCPenChanger" "', expected argument " "1"" of type '" "wxDCPenChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCPenChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCPenChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCPenChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCPenChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxBrush *arg2 = 0 ;
+  wxDCBrushChanger *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "dc",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:new_DCBrushChanger",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCBrushChanger" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCBrushChanger *)new wxDCBrushChanger(*arg1,(wxBrush const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCBrushChanger, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCBrushChanger(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCBrushChanger *arg1 = (wxDCBrushChanger *) 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_wxDCBrushChanger, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCBrushChanger" "', expected argument " "1"" of type '" "wxDCBrushChanger *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCBrushChanger * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCBrushChanger_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCBrushChanger, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCBrushChanger_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRegion *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxRegion,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "wxRegion const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxRegion * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRegion const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  wxRect *arg2 = 0 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,(wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper__SWIG_2(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxDC *arg1 = 0 ;
+  int arg2 ;
+  int arg3 ;
+  int arg4 ;
+  int arg5 ;
+  wxDCClipper *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  int val5 ;
+  int ecode5 = 0 ;
+  
+  if ((nobjs < 5) || (nobjs > 5)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxDC,  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DCClipper" "', expected argument " "1"" of type '" "wxDC &""'"); 
+  }
+  arg1 = reinterpret_cast< wxDC * >(argp1);
+  ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_DCClipper" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_DCClipper" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_DCClipper" "', expected argument " "4"" of type '" "int""'");
+  } 
+  arg4 = static_cast< int >(val4);
+  ecode5 = SWIG_AsVal_int(swig_obj[4], &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_DCClipper" "', expected argument " "5"" of type '" "int""'");
+  } 
+  arg5 = static_cast< int >(val5);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (wxDCClipper *)new wxDCClipper(*arg1,arg2,arg3,arg4,arg5);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxDCClipper, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_new_DCClipper(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[6];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"new_DCClipper",0,5,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxRegion, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_new_DCClipper__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_new_DCClipper__SWIG_1(self, argc, argv);
+  }
+  if (argc == 5) {
+    return _wrap_new_DCClipper__SWIG_2(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'new_DCClipper'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_DCClipper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDCClipper *arg1 = (wxDCClipper *) 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_wxDCClipper, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DCClipper" "', expected argument " "1"" of type '" "wxDCClipper *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDCClipper * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete arg1;
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *DCClipper_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxDCClipper, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *DCClipper_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
 SWIGINTERN PyObject *_wrap_new_MemoryDC(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxBitmap const &arg1_defvalue = wxNullBitmap ;
@@ -25206,6 +25819,328 @@ SWIGINTERN PyObject *PrinterDC_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject
   return SWIG_Python_InitShadowInstance(args);
 }
 
+SWIGINTERN PyObject *_wrap_new_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) NULL ;
+  wxGraphicsObject *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "renderer", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|O:new_GraphicsObject",kwnames,&obj0)) SWIG_fail;
+  if (obj0) {
+    res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+    if (!SWIG_IsOK(res1)) {
+      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+    }
+    arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  }
+  {
+    result = (wxGraphicsObject *)new wxGraphicsObject(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsObject, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsObject(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 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_wxGraphicsObject, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsObject" "', expected argument " "1"" of type '" "wxGraphicsObject *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_IsNull(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  bool 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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_IsNull" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (bool)((wxGraphicsObject const *)arg1)->IsNull();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsObject_GetRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsObject *arg1 = (wxGraphicsObject *) 0 ;
+  wxGraphicsRenderer *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_wxGraphicsObject, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsObject_GetRenderer" "', expected argument " "1"" of type '" "wxGraphicsObject const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsObject * >(argp1);
+  {
+    result = (wxGraphicsRenderer *)((wxGraphicsObject const *)arg1)->GetRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsObject_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsObject, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsObject_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsPen",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsPen *)new wxGraphicsPen();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPen *arg1 = (wxGraphicsPen *) 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_wxGraphicsPen, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsPen" "', expected argument " "1"" of type '" "wxGraphicsPen *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPen * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsPen_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsPen, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsPen_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsBrush",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsBrush *)new wxGraphicsBrush();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsBrush *arg1 = (wxGraphicsBrush *) 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_wxGraphicsBrush, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsBrush" "', expected argument " "1"" of type '" "wxGraphicsBrush *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsBrush * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsBrush_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsBrush, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsBrush_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  return SWIG_Python_InitShadowInstance(args);
+}
+
+SWIGINTERN PyObject *_wrap_new_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"new_GraphicsFont",0,0,0)) SWIG_fail;
+  {
+    result = (wxGraphicsFont *)new wxGraphicsFont();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_NEW |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsFont *arg1 = (wxGraphicsFont *) 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_wxGraphicsFont, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsFont" "', expected argument " "1"" of type '" "wxGraphicsFont *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsFont * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsFont_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsFont, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *GraphicsFont_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -25232,7 +26167,33 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsPath_Clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *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_wxGraphicsPath, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_Clone" "', expected argument " "1"" of type '" "wxGraphicsPath const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (wxGraphicsPath *)((wxGraphicsPath const *)arg1)->Clone();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -25243,25 +26204,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_MoveToPoint(PyObject *SWIGUNUSEDPARM(sel
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_MoveToPoint",kwnames,&obj0,&obj1,&obj2)) 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_MoveToPoint" "', 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_MoveToPoint" "', 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_MoveToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -25277,7 +26232,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+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 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_MoveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxPoint2D_helper(swig_obj[1], &arg2)) SWIG_fail;
+  }
+  {
+    (arg1)->MoveToPoint((wxPoint2D const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -25288,25 +26291,19 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *SWIGUNUSEDPARM(
   int ecode2 = 0 ;
   double val3 ;
   int ecode3 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsPath_AddLineToPoint",kwnames,&obj0,&obj1,&obj2)) 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_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_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_AddLineToPoint" "', expected argument " "3"" of type '" "wxDouble""'");
   } 
@@ -25322,7 +26319,55 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(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 ;
+  wxPoint2D *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  
+  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_AddLineToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    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();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddLineToPoint(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
+  
+  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 (argc == 3) {
+    return _wrap_GraphicsPath_AddLineToPoint__SWIG_0(self, argc, argv);
+  }
+  
+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) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
   wxDouble arg2 ;
@@ -25345,49 +26390,39 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint(PyObject *SWIGUNUSEDPARM
   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 *) "cx1",(char *) "cy1",(char *) "cx2",(char *) "cy2",(char *) "x",(char *) "y", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddCurveToPoint",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_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_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_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_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_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_AddCurveToPoint" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
-  ecode7 = SWIG_AsVal_double(obj6, &val7);
+  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""'");
   } 
@@ -25403,6 +26438,102 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddCurveToPoint__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxPoint2D *arg2 = 0 ;
+  wxPoint2D *arg3 = 0 ;
+  wxPoint2D *arg4 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxPoint2D temp2 ;
+  wxPoint2D temp3 ;
+  wxPoint2D temp4 ;
+  
+  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_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;
+  }
+  {
+    (arg1)->AddCurveToPoint((wxPoint2D const &)*arg2,(wxPoint2D const &)*arg3,(wxPoint2D const &)*arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsPath *arg2 = (wxGraphicsPath *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "path", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPath * >(argp2);
+  {
+    (arg1)->AddPath((wxGraphicsPath const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_GraphicsPath_CloseSubpath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
@@ -25447,164 +26578,1689 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_GetCurrentPoint(PyObject *SWIGUNUSEDPARM
     result = (arg1)->GetCurrentPoint();
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxPoint2D(static_cast< const wxPoint2D& >(result))), SWIGTYPE_p_wxPoint2D, 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_AddArc__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;
+  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 *""'"); 
+  }
+  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""'");
+  } 
+  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""'");
+  } 
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc__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;
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[8];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsPath_AddArc",0,7,argv))) SWIG_fail;
+  --argc;
+  if (argc == 6) {
+    return _wrap_GraphicsPath_AddArc__SWIG_1(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_AddArc'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_AddQuadCurveToPoint" "', 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_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);
+  {
+    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddRectangle" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 
+  };
+  
+  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 *""'"); 
+  }
+  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;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+  };
+  
+  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 '" "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)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_AddEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  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 '" "GraphicsPath_AddEllipse" "', 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;
+  }
+  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 *""'"); 
+  }
+  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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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] ;
+  
+  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 *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (void *)((wxGraphicsPath const *)arg1)->GetNativePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_UnGetNativePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  void *arg2 = (void *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int res2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "p", NULL 
+  };
+  
+  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 '" "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)->UnGetNativePath(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Transform(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  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 
+  };
+  
+  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 '" "GraphicsPath_Transform" "', 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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_GetBox(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxRect2DDouble 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 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsPath_GetBox" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  {
+    result = (arg1)->GetBox();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  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_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 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 '" "GraphicsPath_Contains" "', 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""'");
+  } 
+  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);
+  }
+  {
+    result = (bool)(arg1)->Contains(arg2,arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains__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;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  int val3 ;
+  int ecode3 = 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 '" "GraphicsPath_Contains" "', 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;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsPath_Contains(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[5];
+  
+  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);
+  }
+check_1:
+  
+  if ((argc >= 3) && (argc <= 4)) {
+    return _wrap_GraphicsPath_Contains__SWIG_0(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsPath_Contains'");
+  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) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsMatrix" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Concat((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Copy(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 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 *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    (arg1)->Copy((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Set(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 ;
+  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 ;
+  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 (!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 '" "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);
+  }
+  {
+    (arg1)->Set(arg2,arg3,arg4,arg5,arg6,arg7);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Invert(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 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_wxGraphicsMatrix, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Invert" "', expected argument " "1"" of type '" "wxGraphicsMatrix *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsMatrix * >(argp1);
+  {
+    (arg1)->Invert();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_IsEqual(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxGraphicsMatrix *arg2 = (wxGraphicsMatrix *) 0 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "t", 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 (!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 *""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsMatrix * >(argp2);
+  {
+    result = (bool)((wxGraphicsMatrix const *)arg1)->IsEqual((wxGraphicsMatrix const *)arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+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 (!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 *""'"); 
+  }
+  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:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Translate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  double val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "dx",(char *) "dy", 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 (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsMatrix_Translate" "', 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_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);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Scale(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  wxDouble arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  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 (!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 '" "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)->Scale(arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_Rotate(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsMatrix *arg1 = (wxGraphicsMatrix *) 0 ;
+  wxDouble arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "angle", NULL 
+  };
+  
+  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 '" "GraphicsMatrix_Rotate" "', 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_Rotate" "', expected argument " "2"" of type '" "wxDouble""'");
+  } 
+  arg2 = static_cast< wxDouble >(val2);
+  {
+    (arg1)->Rotate(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsMatrix_TransformPoint(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_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 '" "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);
+  }
+  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_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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    delete arg1;
+    
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindowDC *arg1 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp1) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxWindow *arg1 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  
+  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxWindow * >(argp1);
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[2];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
+  --argc;
+  if (argc == 1) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 1) {
+    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "context", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  void *arg1 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  int res1 ;
+  PyObject * obj0 = 0 ;
+  char *  kwnames[] = {
+    (char *) "window", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNativeWindow",kwnames,&obj0)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNativeWindow" "', expected argument " "1"" of type '" "void *""'"); 
+  }
+  {
+    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNativeWindow(arg1);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArc(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  bool arg7 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 *) "x",(char *) "y",(char *) "r",(char *) "startAngle",(char *) "endAngle",(char *) "clockwise", NULL 
+    (char *) "self",(char *) "pen", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsPath_AddArc",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsPath, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreatePen",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 '" "GraphicsPath_AddArc" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    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(obj2, &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(obj3, &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(obj4, &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(obj5, &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(obj6, &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 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
   {
-    (arg1)->AddArc(arg2,arg3,arg4,arg5,arg6,arg7);
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddQuadCurveToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
   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 ;
+  void *argp2 = 0 ;
+  int res2 = 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 
+    (char *) "self",(char *) "brush", 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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_CreateBrush",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 '" "GraphicsPath_AddQuadCurveToPoint" "', expected argument " "1"" of type '" "wxGraphicsPath *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  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);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
   {
-    (arg1)->AddQuadCurveToPoint(arg2,arg3,arg4,arg5);
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -25615,114 +28271,75 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddRectangle(PyObject *SWIGUNUSEDPARM(se
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->AddRectangle(arg2,arg3,arg4,arg5);
-    if (PyErr_Occurred()) SWIG_fail;
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-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 
-  };
-  
-  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 *""'"); 
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) 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_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);
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsPath *arg1 = (wxGraphicsPath *) 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -25735,215 +28352,208 @@ SWIGINTERN PyObject *_wrap_GraphicsPath_AddArcToPoint(PyObject *SWIGUNUSEDPARM(s
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "r", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  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 (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 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 '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsPath * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsContext * >(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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', 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""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->AddArcToPoint(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   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_GraphicsContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject *swig_obj[1] ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
   
-  if (!args) SWIG_fail;
-  swig_obj[0] = args;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_DISOWN |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsContext" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    delete arg1;
-    
-    if (PyErr_Occurred()) SWIG_fail;
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
-  PyObject *resultobj = 0;
-  wxWindowDC *arg1 = 0 ;
-  wxGraphicsContext *result = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  
-  if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_wxWindowDC,  0  | 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
-  if (!argp1) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_Create" "', expected argument " "1"" of type '" "wxWindowDC const &""'"); 
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
   }
-  arg1 = reinterpret_cast< wxWindowDC * >(argp1);
   {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create((wxWindowDC const &)*arg1);
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxWindow *arg1 = (wxWindow *) 0 ;
-  wxGraphicsContext *result = 0 ;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
+  wxGraphicsMatrix *result = 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 ;
+  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 < 1) || (nobjs > 1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsContext_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_Create" "', expected argument " "1"" of type '" "wxWindow *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
-  arg1 = reinterpret_cast< wxWindow * >(argp1);
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::Create(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "2"" of type '" "wxDouble""'");
+    } 
+    arg2 = static_cast< wxDouble >(val2);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_Create(PyObject *self, PyObject *args) {
-  int argc;
-  PyObject *argv[2];
-  
-  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_Create",0,1,argv))) SWIG_fail;
-  --argc;
-  if (argc == 1) {
-    int _v = 0;
-    {
-      int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_wxWindowDC, 0);
-      _v = SWIG_CheckState(res);
-    }
-    if (!_v) goto check_1;
-    return _wrap_GraphicsContext_Create__SWIG_0(self, argc, argv);
+  if (obj2) {
+    ecode3 = SWIG_AsVal_double(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "3"" of type '" "wxDouble""'");
+    } 
+    arg3 = static_cast< wxDouble >(val3);
   }
-check_1:
-  
-  if (argc == 1) {
-    return _wrap_GraphicsContext_Create__SWIG_1(self, argc, argv);
+  if (obj3) {
+    ecode4 = SWIG_AsVal_double(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "4"" of type '" "wxDouble""'");
+    } 
+    arg4 = static_cast< wxDouble >(val4);
   }
-  
-fail:
-  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_Create'");
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreateFromNative(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  void *arg1 = (void *) 0 ;
-  wxGraphicsContext *result = 0 ;
-  int res1 ;
-  PyObject * obj0 = 0 ;
-  char *  kwnames[] = {
-    (char *) "context", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GraphicsContext_CreateFromNative",kwnames,&obj0)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0,SWIG_as_voidptrptr(&arg1), 0, 0);
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreateFromNative" "', expected argument " "1"" of type '" "void *""'"); 
+  if (obj4) {
+    ecode5 = SWIG_AsVal_double(obj4, &val5);
+    if (!SWIG_IsOK(ecode5)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "5"" of type '" "wxDouble""'");
+    } 
+    arg5 = static_cast< wxDouble >(val5);
   }
-  {
-    result = (wxGraphicsContext *)wxGraphicsContext::CreateFromNative(arg1);
-    if (PyErr_Occurred()) SWIG_fail;
+  if (obj5) {
+    ecode6 = SWIG_AsVal_double(obj5, &val6);
+    if (!SWIG_IsOK(ecode6)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "6"" of type '" "wxDouble""'");
+    } 
+    arg6 = static_cast< wxDouble >(val6);
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
-SWIGINTERN PyObject *_wrap_GraphicsContext_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxGraphicsPath *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_wxGraphicsContext, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  if (obj6) {
+    ecode7 = SWIG_AsVal_double(obj6, &val7);
+    if (!SWIG_IsOK(ecode7)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "GraphicsContext_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
@@ -26279,7 +28889,41 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsPen *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxGraphicsPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsPen * >(argp2);
+  {
+    (arg1)->SetPen((wxGraphicsPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxPen *arg2 = 0 ;
@@ -26287,19 +28931,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *SWIGUNUSEDPARM(self)
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "pen", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetPen",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetPen" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxPen,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetPen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
   }
@@ -26318,7 +28957,68 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetPen(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetPen",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsPen, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetPen__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetPen__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetPen'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsBrush *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxGraphicsBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxGraphicsBrush * >(argp2);
+  {
+    (arg1)->SetBrush((wxGraphicsBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxBrush *arg2 = 0 ;
@@ -26326,19 +29026,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *SWIGUNUSEDPARM(sel
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "brush", NULL 
-  };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetBrush",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
   }
@@ -26357,160 +29052,58 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxColour *arg6 = 0 ;
-  wxColour *arg7 = 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 ;
-  wxColour temp6 ;
-  wxColour temp7 ;
-  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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetBrush(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsContext_SetLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) 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_SetLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', 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 '" "GraphicsContext_SetLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
-  {
-    arg6 = &temp6;
-    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
-  }
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetBrush",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsBrush, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetBrush__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsContext_SetBrush__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetBrush'");
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
-  wxDouble arg6 ;
-  wxColour *arg7 = 0 ;
-  wxColour *arg8 = 0 ;
+  wxGraphicsFont *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 ;
-  double val6 ;
-  int ecode6 = 0 ;
-  wxColour temp7 ;
-  wxColour temp8 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
-  PyObject * obj3 = 0 ;
-  PyObject * obj4 = 0 ;
-  PyObject * obj5 = 0 ;
-  PyObject * obj6 = 0 ;
-  PyObject * obj7 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColour",(char *) "cColour", NULL 
-  };
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsContext_SetRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  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_SetRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', 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 '" "GraphicsContext_SetRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
-  {
-    arg7 = &temp7;
-    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGraphicsFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
-  {
-    arg8 = &temp8;
-    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxGraphicsFont const &""'"); 
   }
+  arg2 = reinterpret_cast< wxGraphicsFont * >(argp2);
   {
-    (arg1)->SetRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
+    (arg1)->SetFont((wxGraphicsFont const &)*arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26520,27 +29113,25 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
   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 
-  };
+  wxColour temp3 ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetFont",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if ((nobjs < 2) || (nobjs > 3)) SWIG_fail;
+  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_SetFont" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxFont,  0  | 0);
   if (!SWIG_IsOK(res2)) {
     SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
@@ -26548,8 +29139,14 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *SWIGUNUSEDPARM(self
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_SetFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
   }
   arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (swig_obj[2]) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(swig_obj[2], &arg3)) SWIG_fail;
+    }
+  }
   {
-    (arg1)->SetFont((wxFont const &)*arg2);
+    (arg1)->SetFont((wxFont const &)*arg2,(wxColour const &)*arg3);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -26559,36 +29156,29 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_SetTextColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxColour *arg2 = 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  wxColour temp2 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "col", NULL 
-  };
+SWIGINTERN PyObject *_wrap_GraphicsContext_SetFont(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[4];
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_SetTextColour",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_SetTextColour" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg2 = &temp2;
-    if ( ! wxColour_helper(obj1, &arg2)) SWIG_fail;
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsContext_SetFont",0,3,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxGraphicsFont, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsContext_SetFont__SWIG_0(self, argc, argv);
   }
-  {
-    (arg1)->SetTextColour((wxColour const &)*arg2);
-    if (PyErr_Occurred()) SWIG_fail;
+check_1:
+  
+  if ((argc >= 2) && (argc <= 3)) {
+    return _wrap_GraphicsContext_SetFont__SWIG_1(self, argc, argv);
   }
-  resultobj = SWIG_Py_Void();
-  return resultobj;
+  
 fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsContext_SetFont'");
   return NULL;
 }
 
@@ -27120,54 +29710,367 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawIcon(PyObject *SWIGUNUSEDPARM(sel
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
-  double val6 ;
-  int ecode6 = 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 *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode3 = SWIG_AsVal_double(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
+  {
+    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  {
+    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  PyObject *arg2 = (PyObject *) 0 ;
+  PyObject *arg3 = (PyObject *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) 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_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg2 = obj1;
+  arg3 = obj2;
+  {
+    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  size_t arg2 ;
+  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  int arg4 = (int) wxWINDING_RULE ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) 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_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  {
+    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
+    if (arg3 == NULL) SWIG_fail;
+  }
+  if (obj2) {
+    ecode4 = SWIG_AsVal_int(obj2, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  {
+    if (arg3) delete [] arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (arg3) delete [] arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+  } 
+  arg5 = static_cast< wxDouble >(val5);
+  {
+    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsContext *arg1 = (wxGraphicsContext *) 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 ;
-  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "icon",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawIcon",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) 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_DrawIcon" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxIcon,  0  | 0);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  if (!argp2) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsContext_DrawIcon" "', expected argument " "2"" of type '" "wxIcon const &""'"); 
-  }
-  arg2 = reinterpret_cast< wxIcon * >(argp2);
+  ecode2 = SWIG_AsVal_double(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawEllipse" "', 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 '" "GraphicsContext_DrawIcon" "', expected argument " "6"" of type '" "wxDouble""'");
-  } 
-  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawIcon((wxIcon const &)*arg2,arg3,arg4,arg5,arg6);
+    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27177,13 +30080,14 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxDouble arg6 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27194,43 +30098,51 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLine(PyObject *SWIGUNUSEDPARM(s
   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 *) "x1",(char *) "y1",(char *) "x2",(char *) "y2", NULL 
+    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_StrokeLine",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) 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_StrokeLine" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_StrokeLine" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_StrokeLine" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsContext_DrawRoundedRectangle" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+  } 
+  arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->StrokeLine(arg2,arg3,arg4,arg5);
+    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
@@ -27240,137 +30152,283 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsContext_ShouldOffset(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
+  bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "points", NULL 
-  };
+  PyObject *swig_obj[1] ;
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsContext_StrokeLines",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  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_StrokeLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_ShouldOffset" "', expected argument " "1"" of type '" "wxGraphicsContext const *""'"); 
   }
   arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
   {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    result = (bool)((wxGraphicsContext const *)arg1)->ShouldOffset();
+    if (PyErr_Occurred()) SWIG_fail;
   }
   {
-    (arg1)->StrokeLines(arg2,(wxPoint2D const *)arg3);
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *obj;
+  if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  return SWIG_Py_Void();
+}
+
+SWIGINTERN PyObject *_wrap_delete_GraphicsRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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_wxGraphicsRenderer, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GraphicsRenderer" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  {
+    delete arg1;
+    
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_GetDefaultRenderer(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *result = 0 ;
+  
+  if (!SWIG_Python_UnpackTuple(args,"GraphicsRenderer_GetDefaultRenderer",0,0,0)) SWIG_fail;
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsRenderer *)wxGraphicsRenderer::GetDefaultRenderer();
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindowDC *arg2 = 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxWindowDC,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindowDC const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindowDC * >(argp2);
+  {
+    result = (wxGraphicsContext *)(arg1)->CreateContext((wxWindowDC const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxWindow *arg2 = (wxWindow *) 0 ;
+  wxGraphicsContext *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  
+  if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContext" "', expected argument " "2"" of type '" "wxWindow *""'"); 
+  }
+  arg2 = reinterpret_cast< wxWindow * >(argp2);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsContext *)(arg1)->CreateContext(arg2);
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_StrokeLineSegements(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContext(PyObject *self, PyObject *args) {
+  int argc;
+  PyObject *argv[3];
+  
+  if (!(argc = SWIG_Python_UnpackTuple(args,"GraphicsRenderer_CreateContext",0,2,argv))) SWIG_fail;
+  --argc;
+  if (argc == 2) {
+    int _v = 0;
+    {
+      int res = SWIG_ConvertPtr(argv[1], 0, SWIGTYPE_p_wxWindowDC, 0);
+      _v = SWIG_CheckState(res);
+    }
+    if (!_v) goto check_1;
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_0(self, argc, argv);
+  }
+check_1:
+  
+  if (argc == 2) {
+    return _wrap_GraphicsRenderer_CreateContext__SWIG_1(self, argc, argv);
+  }
+  
+fail:
+  SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GraphicsRenderer_CreateContext'");
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  PyObject *arg2 = (PyObject *) 0 ;
-  PyObject *arg3 = (PyObject *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "beginPoints",(char *) "endPoints", NULL 
+    (char *) "self",(char *) "context", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:GraphicsContext_StrokeLineSegements",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeContext",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_StrokeLineSegements" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeContext" "', expected argument " "2"" of type '" "void *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  arg2 = obj1;
-  arg3 = obj2;
   {
-    wxGraphicsContext_StrokeLineSegements(arg1,arg2,arg3);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeContext(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawLines(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateContextFromNativeWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  size_t arg2 ;
-  wxPoint2D *arg3 = (wxPoint2D *) 0 ;
-  int arg4 = (int) wxWINDING_RULE ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  void *arg2 = (void *) 0 ;
+  wxGraphicsContext *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val4 ;
-  int ecode4 = 0 ;
+  int res2 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
-  PyObject * obj2 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "points",(char *) "fillStyle", NULL 
+    (char *) "self",(char *) "window", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsContext_DrawLines",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateContextFromNativeWindow",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawLines" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
-  }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  {
-    arg3 = wxPoint2D_LIST_helper(obj1, &arg2);
-    if (arg3 == NULL) SWIG_fail;
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  if (obj2) {
-    ecode4 = SWIG_AsVal_int(obj2, &val4);
-    if (!SWIG_IsOK(ecode4)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsContext_DrawLines" "', expected argument " "4"" of type '" "int""'");
-    } 
-    arg4 = static_cast< int >(val4);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1,SWIG_as_voidptrptr(&arg2), 0, 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateContextFromNativeWindow" "', expected argument " "2"" of type '" "void *""'"); 
   }
   {
-    (arg1)->DrawLines(arg2,(wxPoint2D const *)arg3,arg4);
+    result = (wxGraphicsContext *)(arg1)->CreateContextFromNativeWindow(arg2);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
-  {
-    if (arg3) delete [] arg3;
-  }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsContext, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePath(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxGraphicsPath *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_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePath" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   {
-    if (arg3) delete [] arg3;
+    result = (wxGraphicsPath *)(arg1)->CreatePath();
+    if (PyErr_Occurred()) SWIG_fail;
   }
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsPath, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
-  wxDouble arg2 ;
-  wxDouble arg3 ;
-  wxDouble arg4 ;
-  wxDouble arg5 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 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 ;
+  wxGraphicsMatrix *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27381,59 +30439,170 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRectangle(PyObject *SWIGUNUSEDPAR
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "a",(char *) "b",(char *) "c",(char *) "d",(char *) "tx",(char *) "ty", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOO:GraphicsRenderer_CreateMatrix",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateMatrix" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  if (obj1) {
+    ecode2 = SWIG_AsVal_double(obj1, &val2);
+    if (!SWIG_IsOK(ecode2)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', 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 '" "GraphicsRenderer_CreateMatrix" "', expected argument " "7"" of type '" "wxDouble""'");
+    } 
+    arg7 = static_cast< wxDouble >(val7);
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
-  ecode2 = SWIG_AsVal_double(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', 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 '" "GraphicsContext_DrawRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
-  } 
-  arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawRectangle(arg2,arg3,arg4,arg5);
+    result = (wxGraphicsMatrix *)(arg1)->CreateMatrix(arg2,arg3,arg4,arg5,arg6,arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGraphicsMatrix, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreatePen(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxPen *arg2 = 0 ;
+  wxGraphicsPen result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pen", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreatePen",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPen,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreatePen" "', expected argument " "2"" of type '" "wxPen const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPen * >(argp2);
+  {
+    result = (arg1)->CreatePen((wxPen const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsPen(static_cast< const wxGraphicsPen& >(result))), SWIGTYPE_p_wxGraphicsPen, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxBrush *arg2 = 0 ;
+  wxGraphicsBrush result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "brush", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GraphicsRenderer_CreateBrush",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxBrush,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateBrush" "', expected argument " "2"" of type '" "wxBrush const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxBrush * >(argp2);
+  {
+    result = (arg1)->CreateBrush((wxBrush const &)*arg2);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateLinearGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
+  wxColour *arg6 = 0 ;
+  wxColour *arg7 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27444,60 +30613,75 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawEllipse(PyObject *SWIGUNUSEDPARM(
   int ecode4 = 0 ;
   double val5 ;
   int ecode5 = 0 ;
+  wxColour temp6 ;
+  wxColour temp7 ;
   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 *) "x",(char *) "y",(char *) "w",(char *) "h", NULL 
+    (char *) "self",(char *) "x1",(char *) "y1",(char *) "x2",(char *) "y2",(char *) "c1",(char *) "c2", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:GraphicsContext_DrawEllipse",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:GraphicsRenderer_CreateLinearGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawEllipse" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', 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 '" "GraphicsContext_DrawEllipse" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateLinearGradientBrush" "', expected argument " "5"" of type '" "wxDouble""'");
   } 
   arg5 = static_cast< wxDouble >(val5);
   {
-    (arg1)->DrawEllipse(arg2,arg3,arg4,arg5);
+    arg6 = &temp6;
+    if ( ! wxColour_helper(obj5, &arg6)) SWIG_fail;
+  }
+  {
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateLinearGradientBrush(arg2,arg3,arg4,arg5,(wxColour const &)*arg6,(wxColour const &)*arg7);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateRadialGradientBrush(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
-  wxGraphicsContext *arg1 = (wxGraphicsContext *) 0 ;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
   wxDouble arg2 ;
   wxDouble arg3 ;
   wxDouble arg4 ;
   wxDouble arg5 ;
   wxDouble arg6 ;
+  wxColour *arg7 = 0 ;
+  wxColour *arg8 = 0 ;
+  wxGraphicsBrush result;
   void *argp1 = 0 ;
   int res1 = 0 ;
   double val2 ;
@@ -27510,62 +30694,124 @@ SWIGINTERN PyObject *_wrap_GraphicsContext_DrawRoundedRectangle(PyObject *SWIGUN
   int ecode5 = 0 ;
   double val6 ;
   int ecode6 = 0 ;
+  wxColour temp7 ;
+  wxColour temp8 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
+  PyObject * obj7 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "x",(char *) "y",(char *) "w",(char *) "h",(char *) "radius", NULL 
+    (char *) "self",(char *) "xo",(char *) "yo",(char *) "xc",(char *) "yc",(char *) "radius",(char *) "oColor",(char *) "cColor", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:GraphicsContext_DrawRoundedRectangle",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsContext, 0 |  0 );
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOOO:GraphicsRenderer_CreateRadialGradientBrush",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "1"" of type '" "wxGraphicsContext *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
   }
-  arg1 = reinterpret_cast< wxGraphicsContext * >(argp1);
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
   ecode2 = SWIG_AsVal_double(obj1, &val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "2"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "3"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "4"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "5"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', 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 '" "GraphicsContext_DrawRoundedRectangle" "', expected argument " "6"" of type '" "wxDouble""'");
+    SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "GraphicsRenderer_CreateRadialGradientBrush" "', expected argument " "6"" of type '" "wxDouble""'");
   } 
   arg6 = static_cast< wxDouble >(val6);
   {
-    (arg1)->DrawRoundedRectangle(arg2,arg3,arg4,arg5,arg6);
+    arg7 = &temp7;
+    if ( ! wxColour_helper(obj6, &arg7)) SWIG_fail;
+  }
+  {
+    arg8 = &temp8;
+    if ( ! wxColour_helper(obj7, &arg8)) SWIG_fail;
+  }
+  {
+    result = (arg1)->CreateRadialGradientBrush(arg2,arg3,arg4,arg5,arg6,(wxColour const &)*arg7,(wxColour const &)*arg8);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_Py_Void();
+  resultobj = SWIG_NewPointerObj((new wxGraphicsBrush(static_cast< const wxGraphicsBrush& >(result))), SWIGTYPE_p_wxGraphicsBrush, SWIG_POINTER_OWN |  0 );
   return resultobj;
 fail:
   return NULL;
 }
 
 
-SWIGINTERN PyObject *GraphicsContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_GraphicsRenderer_CreateFont(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxGraphicsRenderer *arg1 = (wxGraphicsRenderer *) 0 ;
+  wxFont *arg2 = 0 ;
+  wxColour const &arg3_defvalue = *wxBLACK ;
+  wxColour *arg3 = (wxColour *) &arg3_defvalue ;
+  wxGraphicsFont result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  wxColour temp3 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "font",(char *) "col", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:GraphicsRenderer_CreateFont",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGraphicsRenderer, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "1"" of type '" "wxGraphicsRenderer *""'"); 
+  }
+  arg1 = reinterpret_cast< wxGraphicsRenderer * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxFont,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GraphicsRenderer_CreateFont" "', expected argument " "2"" of type '" "wxFont const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxFont * >(argp2);
+  if (obj2) {
+    {
+      arg3 = &temp3;
+      if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
+  }
+  {
+    result = (arg1)->CreateFont((wxFont const &)*arg2,(wxColour const &)*arg3);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxGraphicsFont(static_cast< const wxGraphicsFont& >(result))), SWIGTYPE_p_wxGraphicsFont, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *GraphicsRenderer_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
-  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsContext, SWIG_NewClientData(obj));
+  SWIG_TypeNewClientData(SWIGTYPE_p_wxGraphicsRenderer, SWIG_NewClientData(obj));
   return SWIG_Py_Void();
 }
 
@@ -35974,6 +39220,22 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"DC__DrawPolygonList", (PyCFunction) _wrap_DC__DrawPolygonList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC__DrawTextList", (PyCFunction) _wrap_DC__DrawTextList, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"DC_swigregister", DC_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_DCTextColourChanger", (PyCFunction) _wrap_new_DCTextColourChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCTextColourChanger", (PyCFunction)_wrap_delete_DCTextColourChanger, METH_O, NULL},
+        { (char *)"DCTextColourChanger_swigregister", DCTextColourChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCTextColourChanger_swiginit", DCTextColourChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCPenChanger", (PyCFunction) _wrap_new_DCPenChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCPenChanger", (PyCFunction)_wrap_delete_DCPenChanger, METH_O, NULL},
+        { (char *)"DCPenChanger_swigregister", DCPenChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCPenChanger_swiginit", DCPenChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCBrushChanger", (PyCFunction) _wrap_new_DCBrushChanger, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_DCBrushChanger", (PyCFunction)_wrap_delete_DCBrushChanger, METH_O, NULL},
+        { (char *)"DCBrushChanger_swigregister", DCBrushChanger_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCBrushChanger_swiginit", DCBrushChanger_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_DCClipper", _wrap_new_DCClipper, METH_VARARGS, NULL},
+        { (char *)"delete_DCClipper", (PyCFunction)_wrap_delete_DCClipper, METH_O, NULL},
+        { (char *)"DCClipper_swigregister", DCClipper_swigregister, METH_VARARGS, NULL},
+        { (char *)"DCClipper_swiginit", DCClipper_swiginit, METH_VARARGS, NULL},
         { (char *)"new_MemoryDC", (PyCFunction) _wrap_new_MemoryDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"new_MemoryDCFromDC", (PyCFunction) _wrap_new_MemoryDCFromDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"MemoryDC_SelectObject", (PyCFunction) _wrap_MemoryDC_SelectObject, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -36033,22 +39295,71 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"new_PrinterDC", (PyCFunction) _wrap_new_PrinterDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"PrinterDC_swigregister", PrinterDC_swigregister, METH_VARARGS, NULL},
         { (char *)"PrinterDC_swiginit", PrinterDC_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsObject", (PyCFunction) _wrap_new_GraphicsObject, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"delete_GraphicsObject", (PyCFunction)_wrap_delete_GraphicsObject, METH_O, NULL},
+        { (char *)"GraphicsObject_IsNull", (PyCFunction)_wrap_GraphicsObject_IsNull, METH_O, NULL},
+        { (char *)"GraphicsObject_GetRenderer", (PyCFunction)_wrap_GraphicsObject_GetRenderer, METH_O, NULL},
+        { (char *)"GraphicsObject_swigregister", GraphicsObject_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsObject_swiginit", GraphicsObject_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsPen", (PyCFunction)_wrap_new_GraphicsPen, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsPen", (PyCFunction)_wrap_delete_GraphicsPen, METH_O, NULL},
+        { (char *)"GraphicsPen_swigregister", GraphicsPen_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsPen_swiginit", GraphicsPen_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsBrush", (PyCFunction)_wrap_new_GraphicsBrush, METH_NOARGS, NULL},
+        { (char *)"delete_GraphicsBrush", (PyCFunction)_wrap_delete_GraphicsBrush, METH_O, NULL},
+        { (char *)"GraphicsBrush_swigregister", GraphicsBrush_swigregister, METH_VARARGS, NULL},
+        { (char *)"GraphicsBrush_swiginit", GraphicsBrush_swiginit, METH_VARARGS, NULL},
+        { (char *)"new_GraphicsFont", (PyCFunction)_wrap_new_GraphicsFont, METH_NOARGS, NULL},
+        { (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_GraphicsPath", (PyCFunction)_wrap_delete_GraphicsPath, METH_O, NULL},
-        { (char *)"GraphicsPath_MoveToPoint", (PyCFunction) _wrap_GraphicsPath_MoveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddLineToPoint", (PyCFunction) _wrap_GraphicsPath_AddLineToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsPath_AddCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddCurveToPoint, METH_VARARGS | METH_KEYWORDS, 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},
+        { (char *)"GraphicsPath_AddPath", (PyCFunction) _wrap_GraphicsPath_AddPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_CloseSubpath", (PyCFunction)_wrap_GraphicsPath_CloseSubpath, METH_O, NULL},
         { (char *)"GraphicsPath_GetCurrentPoint", (PyCFunction)_wrap_GraphicsPath_GetCurrentPoint, METH_O, NULL},
-        { (char *)"GraphicsPath_AddArc", (PyCFunction) _wrap_GraphicsPath_AddArc, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddArc", _wrap_GraphicsPath_AddArc, METH_VARARGS, NULL},
         { (char *)"GraphicsPath_AddQuadCurveToPoint", (PyCFunction) _wrap_GraphicsPath_AddQuadCurveToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddRectangle", (PyCFunction) _wrap_GraphicsPath_AddRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddCircle", (PyCFunction) _wrap_GraphicsPath_AddCircle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsPath_AddArcToPoint", (PyCFunction) _wrap_GraphicsPath_AddArcToPoint, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddEllipse", (PyCFunction) _wrap_GraphicsPath_AddEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_AddRoundedRectangle", (PyCFunction) _wrap_GraphicsPath_AddRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_GetNativePath", (PyCFunction)_wrap_GraphicsPath_GetNativePath, METH_O, NULL},
+        { (char *)"GraphicsPath_UnGetNativePath", (PyCFunction) _wrap_GraphicsPath_UnGetNativePath, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsPath_Transform", (PyCFunction) _wrap_GraphicsPath_Transform, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (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},
+        { (char *)"GraphicsContext_CreateFromNativeWindow", (PyCFunction) _wrap_GraphicsContext_CreateFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_CreatePath", (PyCFunction)_wrap_GraphicsContext_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsContext_CreatePen", (PyCFunction) _wrap_GraphicsContext_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateBrush", (PyCFunction) _wrap_GraphicsContext_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateFont", (PyCFunction) _wrap_GraphicsContext_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_CreateMatrix", (PyCFunction) _wrap_GraphicsContext_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_PushState", (PyCFunction)_wrap_GraphicsContext_PushState, METH_O, NULL},
         { (char *)"GraphicsContext_PopState", (PyCFunction)_wrap_GraphicsContext_PopState, METH_O, NULL},
         { (char *)"GraphicsContext_ClipRegion", (PyCFunction) _wrap_GraphicsContext_ClipRegion, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -36058,12 +39369,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_SetPen", (PyCFunction) _wrap_GraphicsContext_SetPen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetBrush", (PyCFunction) _wrap_GraphicsContext_SetBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetLinearGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetRadialGradientBrush", (PyCFunction) _wrap_GraphicsContext_SetRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetFont", (PyCFunction) _wrap_GraphicsContext_SetFont, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"GraphicsContext_SetTextColour", (PyCFunction) _wrap_GraphicsContext_SetTextColour, METH_VARARGS | METH_KEYWORDS, 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},
         { (char *)"GraphicsContext_StrokePath", (PyCFunction) _wrap_GraphicsContext_StrokePath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_FillPath", (PyCFunction) _wrap_GraphicsContext_FillPath, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawPath", (PyCFunction) _wrap_GraphicsContext_DrawPath, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -36081,7 +39389,21 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"GraphicsContext_DrawRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawEllipse", (PyCFunction) _wrap_GraphicsContext_DrawEllipse, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"GraphicsContext_DrawRoundedRectangle", (PyCFunction) _wrap_GraphicsContext_DrawRoundedRectangle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsContext_ShouldOffset", (PyCFunction)_wrap_GraphicsContext_ShouldOffset, METH_O, NULL},
         { (char *)"GraphicsContext_swigregister", GraphicsContext_swigregister, METH_VARARGS, NULL},
+        { (char *)"delete_GraphicsRenderer", (PyCFunction)_wrap_delete_GraphicsRenderer, METH_O, NULL},
+        { (char *)"GraphicsRenderer_GetDefaultRenderer", (PyCFunction)_wrap_GraphicsRenderer_GetDefaultRenderer, METH_NOARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContext", _wrap_GraphicsRenderer_CreateContext, METH_VARARGS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeContext", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeContext, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateContextFromNativeWindow", (PyCFunction) _wrap_GraphicsRenderer_CreateContextFromNativeWindow, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePath", (PyCFunction)_wrap_GraphicsRenderer_CreatePath, METH_O, NULL},
+        { (char *)"GraphicsRenderer_CreateMatrix", (PyCFunction) _wrap_GraphicsRenderer_CreateMatrix, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreatePen", (PyCFunction) _wrap_GraphicsRenderer_CreatePen, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateLinearGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateLinearGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateRadialGradientBrush", (PyCFunction) _wrap_GraphicsRenderer_CreateRadialGradientBrush, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_CreateFont", (PyCFunction) _wrap_GraphicsRenderer_CreateFont, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"GraphicsRenderer_swigregister", GraphicsRenderer_swigregister, METH_VARARGS, NULL},
         { (char *)"new_GCDC", (PyCFunction) _wrap_new_GCDC, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"delete_GCDC", (PyCFunction)_wrap_delete_GCDC, METH_O, NULL},
         { (char *)"GCDC_GetGraphicsContext", (PyCFunction)_wrap_GCDC_GetGraphicsContext, METH_O, NULL},
@@ -36312,6 +39634,24 @@ static void *_p_wxPaintDCTo_p_wxWindowDC(void *x) {
 static void *_p_wxPyLocaleTo_p_wxLocale(void *x) {
     return (void *)((wxLocale *)  ((wxPyLocale *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPen *) x));
+}
+static void *_p_wxGraphicsBrushTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsMatrixTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsMatrix *) x));
+}
+static void *_p_wxGraphicsFontTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsFont *) x));
+}
+static void *_p_wxGraphicsContextTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsContext *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxGraphicsObject(void *x) {
+    return (void *)((wxGraphicsObject *)  ((wxGraphicsPath *) x));
+}
 static void *_p_wxIconTo_p_wxGDIObject(void *x) {
     return (void *)((wxGDIObject *)  ((wxIcon *) x));
 }
@@ -36468,6 +39808,9 @@ static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
 static void *_p_wxControlTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
 }
+static void *_p_wxGraphicsPenTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPen *) x));
+}
 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
 }
@@ -36492,6 +39835,12 @@ static void *_p_wxWindowDCTo_p_wxObject(void *x) {
 static void *_p_wxGDIObjectTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxGDIObject *) x));
 }
+static void *_p_wxGraphicsObjectTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsObject *) x));
+}
+static void *_p_wxGraphicsPathTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsPath *) x));
+}
 static void *_p_wxEffectsTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxEffects *) x));
 }
@@ -36504,6 +39853,9 @@ static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
 static void *_p_wxPostScriptDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxPostScriptDC *) x));
 }
+static void *_p_wxGraphicsContextTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsContext *) x));
+}
 static void *_p_wxShowEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
 }
@@ -36609,6 +39961,12 @@ static void *_p_wxImageTo_p_wxObject(void *x) {
 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
 }
+static void *_p_wxGraphicsBrushTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsBrush *) x));
+}
+static void *_p_wxGraphicsRendererTo_p_wxObject(void *x) {
+    return (void *)((wxObject *)  ((wxGraphicsRenderer *) x));
+}
 static void *_p_wxPaletteTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxGDIObject *) ((wxPalette *) x));
 }
@@ -36630,6 +39988,9 @@ static void *_p_wxEncodingConverterTo_p_wxObject(void *x) {
 static void *_p_wxMirrorDCTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxDC *) ((wxMirrorDC *) x));
 }
+static void *_p_wxGraphicsFontTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsFont *) x));
+}
 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
 }
@@ -36660,6 +40021,9 @@ static void *_p_wxBitmapTo_p_wxObject(void *x) {
 static void *_p_wxMaskTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxMask *) x));
 }
+static void *_p_wxGraphicsMatrixTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxGraphicsObject *) ((wxGraphicsMatrix *) x));
+}
 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
 }
@@ -36753,7 +40117,11 @@ static swig_type_info _swigt__p_wxColour = {"_p_wxColour", "wxColour *", 0, 0, (
 static swig_type_info _swigt__p_wxColourDatabase = {"_p_wxColourDatabase", "wxColourDatabase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxCursor = {"_p_wxCursor", "wxCursor *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDC = {"_p_wxDC", "wxDC *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCBrushChanger = {"_p_wxDCBrushChanger", "wxDCBrushChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCClipper = {"_p_wxDCClipper", "wxDCClipper *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDCOverlay = {"_p_wxDCOverlay", "wxDCOverlay *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCPenChanger = {"_p_wxDCPenChanger", "wxDCPenChanger *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxDCTextColourChanger = {"_p_wxDCTextColourChanger", "wxDCTextColourChanger *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDash = {"_p_wxDash", "wxDash *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxEffects = {"_p_wxEffects", "wxEffects *", 0, 0, (void*)0, 0};
@@ -36764,8 +40132,14 @@ static swig_type_info _swigt__p_wxFontMapper = {"_p_wxFontMapper", "wxFontMapper
 static swig_type_info _swigt__p_wxGCDC = {"_p_wxGCDC", "wxGCDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObjListBase = {"_p_wxGDIObjListBase", "wxGDIObjListBase *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGDIObject = {"_p_wxGDIObject", "wxGDIObject *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsBrush = {"_p_wxGraphicsBrush", "wxGraphicsBrush *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsContext = {"_p_wxGraphicsContext", "wxGraphicsContext *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsFont = {"_p_wxGraphicsFont", "wxGraphicsFont *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsMatrix = {"_p_wxGraphicsMatrix", "wxGraphicsMatrix *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsObject = {"_p_wxGraphicsObject", "wxGraphicsObject *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxGraphicsPath = {"_p_wxGraphicsPath", "wxGraphicsPath *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsPen = {"_p_wxGraphicsPen", "wxGraphicsPen *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxGraphicsRenderer = {"_p_wxGraphicsRenderer", "wxGraphicsRenderer *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxHeaderButtonParams = {"_p_wxHeaderButtonParams", "wxHeaderButtonParams *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIcon = {"_p_wxIcon", "wxIcon *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxIconBundle = {"_p_wxIconBundle", "wxIconBundle *", 0, 0, (void*)0, 0};
@@ -36823,13 +40197,13 @@ static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0,
 static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
-static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0, 0};
 static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0, 0};
@@ -36869,6 +40243,7 @@ static swig_type_info _swigt__p_wxPenList = {"_p_wxPenList", "wxPenList *", 0, 0
 static swig_type_info _swigt__p_wxPixelDataBase = {"_p_wxPixelDataBase", "wxPixelDataBase *", 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_wxPoint2D = {"_p_wxPoint2D", "wxPoint2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_wxPoint2DDouble = {"_p_wxPoint2DDouble", "wxPoint2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPostScriptDC = {"_p_wxPostScriptDC", "wxPostScriptDC *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrintData = {"_p_wxPrintData", "wxPrintData *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPrinterDC = {"_p_wxPrinterDC", "wxPrinterDC *", 0, 0, (void*)0, 0};
@@ -36876,6 +40251,7 @@ static swig_type_info _swigt__p_wxPseudoDC = {"_p_wxPseudoDC", "wxPseudoDC *", 0
 static swig_type_info _swigt__p_wxPyFontEnumerator = {"_p_wxPyFontEnumerator", "wxPyFontEnumerator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxPyLocale = {"_p_wxPyLocale", "wxPyLocale *", 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_wxRect2DDouble = {"_p_wxRect2DDouble", "wxRect2DDouble *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegion = {"_p_wxRegion", "wxRegion *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRegionIterator = {"_p_wxRegionIterator", "wxRegionIterator *", 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_wxRendererNative = {"_p_wxRendererNative", "wxRendererNative *", 0, 0, (void*)0, 0};
@@ -36926,7 +40302,11 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxControlWithItems,
   &_swigt__p_wxCursor,
   &_swigt__p_wxDC,
+  &_swigt__p_wxDCBrushChanger,
+  &_swigt__p_wxDCClipper,
   &_swigt__p_wxDCOverlay,
+  &_swigt__p_wxDCPenChanger,
+  &_swigt__p_wxDCTextColourChanger,
   &_swigt__p_wxDash,
   &_swigt__p_wxDateEvent,
   &_swigt__p_wxDisplayChangedEvent,
@@ -36949,8 +40329,14 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxGDIObjListBase,
   &_swigt__p_wxGDIObject,
   &_swigt__p_wxGIFHandler,
+  &_swigt__p_wxGraphicsBrush,
   &_swigt__p_wxGraphicsContext,
+  &_swigt__p_wxGraphicsFont,
+  &_swigt__p_wxGraphicsMatrix,
+  &_swigt__p_wxGraphicsObject,
   &_swigt__p_wxGraphicsPath,
+  &_swigt__p_wxGraphicsPen,
+  &_swigt__p_wxGraphicsRenderer,
   &_swigt__p_wxGridBagSizer,
   &_swigt__p_wxGridSizer,
   &_swigt__p_wxHeaderButtonParams,
@@ -37006,6 +40392,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPixelDataBase,
   &_swigt__p_wxPoint,
   &_swigt__p_wxPoint2D,
+  &_swigt__p_wxPoint2DDouble,
   &_swigt__p_wxPostScriptDC,
   &_swigt__p_wxPrintData,
   &_swigt__p_wxPrinterDC,
@@ -37020,6 +40407,7 @@ static swig_type_info *swig_type_initial[] = {
   &_swigt__p_wxPyValidator,
   &_swigt__p_wxQueryNewPaletteEvent,
   &_swigt__p_wxRect,
+  &_swigt__p_wxRect2DDouble,
   &_swigt__p_wxRegion,
   &_swigt__p_wxRegionIterator,
   &_swigt__p_wxRendererNative,
@@ -37073,7 +40461,11 @@ static swig_cast_info _swigc__p_wxColour[] = {  {&_swigt__p_wxColour, 0, 0, 0},{
 static swig_cast_info _swigc__p_wxColourDatabase[] = {  {&_swigt__p_wxColourDatabase, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCursor[] = {  {&_swigt__p_wxCursor, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDC[] = {  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxDC, 0, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxDC, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxDC, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCBrushChanger[] = {  {&_swigt__p_wxDCBrushChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCClipper[] = {  {&_swigt__p_wxDCClipper, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDCOverlay[] = {  {&_swigt__p_wxDCOverlay, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCPenChanger[] = {  {&_swigt__p_wxDCPenChanger, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxDCTextColourChanger[] = {  {&_swigt__p_wxDCTextColourChanger, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDash[] = {  {&_swigt__p_wxDash, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxDuplexMode[] = {  {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEffects[] = {  {&_swigt__p_wxEffects, 0, 0, 0},{0, 0, 0, 0}};
@@ -37084,8 +40476,14 @@ static swig_cast_info _swigc__p_wxFontMapper[] = {  {&_swigt__p_wxFontMapper, 0,
 static swig_cast_info _swigc__p_wxGCDC[] = {  {&_swigt__p_wxGCDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObjListBase[] = {  {&_swigt__p_wxGDIObjListBase, 0, 0, 0},  {&_swigt__p_wxBrushList, _p_wxBrushListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxFontList, _p_wxFontListTo_p_wxGDIObjListBase, 0, 0},  {&_swigt__p_wxPenList, _p_wxPenListTo_p_wxGDIObjListBase, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGDIObject[] = {  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxGDIObject, 0, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxGDIObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxGDIObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsBrush[] = {  {&_swigt__p_wxGraphicsBrush, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsContext[] = {  {&_swigt__p_wxGraphicsContext, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsFont[] = {  {&_swigt__p_wxGraphicsFont, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsMatrix[] = {  {&_swigt__p_wxGraphicsMatrix, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsObject[] = {  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsObject, 0, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxGraphicsObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxGraphicsObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxGraphicsPath[] = {  {&_swigt__p_wxGraphicsPath, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsPen[] = {  {&_swigt__p_wxGraphicsPen, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxGraphicsRenderer[] = {  {&_swigt__p_wxGraphicsRenderer, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxHeaderButtonParams[] = {  {&_swigt__p_wxHeaderButtonParams, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIcon[] = {  {&_swigt__p_wxIcon, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxIconBundle[] = {  {&_swigt__p_wxIconBundle, 0, 0, 0},{0, 0, 0, 0}};
@@ -37142,13 +40540,13 @@ static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent,
 static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxEvtHandler[] = {{&_swigt__p_wxEvtHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
@@ -37179,7 +40577,7 @@ static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusE
 static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
-static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxObject[] = {  {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegionIterator, _p_wxRegionIteratorTo_p_wxObject, 0, 0},  {&_swigt__p_wxPen, _p_wxPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0},  {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGCDC, _p_wxGCDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMask, _p_wxMaskTo_p_wxObject, 0, 0},  {&_swigt__p_wxPseudoDC, _p_wxPseudoDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPen, _p_wxGraphicsPenTo_p_wxObject, 0, 0},  {&_swigt__p_wxFont, _p_wxFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxClientDC, _p_wxClientDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxMemoryDC, _p_wxMemoryDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxRegion, _p_wxRegionTo_p_wxObject, 0, 0},  {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxDC, _p_wxDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxIcon, _p_wxIconTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDC, _p_wxWindowDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGDIObject, _p_wxGDIObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsObject, _p_wxGraphicsObjectTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsPath, _p_wxGraphicsPathTo_p_wxObject, 0, 0},  {&_swigt__p_wxEffects, _p_wxEffectsTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPostScriptDC, _p_wxPostScriptDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsContext, _p_wxGraphicsContextTo_p_wxObject, 0, 0},  {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0},  {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxAutoBufferedPaintDC, _p_wxAutoBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedPaintDC, _p_wxBufferedPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPaintDC, _p_wxPaintDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPrinterDC, _p_wxPrinterDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxScreenDC, _p_wxScreenDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0},  {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0},  {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0},  {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsBrush, _p_wxGraphicsBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsRenderer, _p_wxGraphicsRendererTo_p_wxObject, 0, 0},  {&_swigt__p_wxBufferedDC, _p_wxBufferedDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxPalette, _p_wxPaletteTo_p_wxObject, 0, 0},  {&_swigt__p_wxImageList, _p_wxImageListTo_p_wxObject, 0, 0},  {&_swigt__p_wxCursor, _p_wxCursorTo_p_wxObject, 0, 0},  {&_swigt__p_wxObject, 0, 0, 0},  {&_swigt__p_wxGraphicsFont, _p_wxGraphicsFontTo_p_wxObject, 0, 0},  {&_swigt__p_wxMirrorDC, _p_wxMirrorDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxEncodingConverter, _p_wxEncodingConverterTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFileDC, _p_wxMetaFileDCTo_p_wxObject, 0, 0},  {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0},  {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0},  {&_swigt__p_wxBitmap, _p_wxBitmapTo_p_wxObject, 0, 0},  {&_swigt__p_wxGraphicsMatrix, _p_wxGraphicsMatrixTo_p_wxObject, 0, 0},  {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0},  {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0},  {&_swigt__p_wxBrush, _p_wxBrushTo_p_wxObject, 0, 0},  {&_swigt__p_wxMetaFile, _p_wxMetaFileTo_p_wxObject, 0, 0},  {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0},  {&_swigt__p_wxColour, _p_wxColourTo_p_wxObject, 0, 0},  {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0},  {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxOverlay[] = {  {&_swigt__p_wxOverlay, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPaintDC[] = {  {&_swigt__p_wxPaintDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPalette[] = {  {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
@@ -37189,6 +40587,7 @@ static swig_cast_info _swigc__p_wxPenList[] = {  {&_swigt__p_wxPenList, 0, 0, 0}
 static swig_cast_info _swigc__p_wxPixelDataBase[] = {  {&_swigt__p_wxPixelDataBase, 0, 0, 0},  {&_swigt__p_wxNativePixelData, _p_wxNativePixelDataTo_p_wxPixelDataBase, 0, 0},  {&_swigt__p_wxAlphaPixelData, _p_wxAlphaPixelDataTo_p_wxPixelDataBase, 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_wxPoint2D[] = {  {&_swigt__p_wxPoint2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_wxPoint2DDouble[] = {  {&_swigt__p_wxPoint2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPostScriptDC[] = {  {&_swigt__p_wxPostScriptDC, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrintData[] = {  {&_swigt__p_wxPrintData, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPrinterDC[] = {  {&_swigt__p_wxPrinterDC, 0, 0, 0},{0, 0, 0, 0}};
@@ -37196,6 +40595,7 @@ static swig_cast_info _swigc__p_wxPseudoDC[] = {  {&_swigt__p_wxPseudoDC, 0, 0,
 static swig_cast_info _swigc__p_wxPyFontEnumerator[] = {  {&_swigt__p_wxPyFontEnumerator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxPyLocale[] = {  {&_swigt__p_wxPyLocale, 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_wxRect2DDouble[] = {  {&_swigt__p_wxRect2DDouble, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegion[] = {  {&_swigt__p_wxRegion, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRegionIterator[] = {  {&_swigt__p_wxRegionIterator, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_wxRendererNative[] = {  {&_swigt__p_wxRendererNative, 0, 0, 0},{0, 0, 0, 0}};
@@ -37246,7 +40646,11 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxControlWithItems,
   _swigc__p_wxCursor,
   _swigc__p_wxDC,
+  _swigc__p_wxDCBrushChanger,
+  _swigc__p_wxDCClipper,
   _swigc__p_wxDCOverlay,
+  _swigc__p_wxDCPenChanger,
+  _swigc__p_wxDCTextColourChanger,
   _swigc__p_wxDash,
   _swigc__p_wxDateEvent,
   _swigc__p_wxDisplayChangedEvent,
@@ -37269,8 +40673,14 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxGDIObjListBase,
   _swigc__p_wxGDIObject,
   _swigc__p_wxGIFHandler,
+  _swigc__p_wxGraphicsBrush,
   _swigc__p_wxGraphicsContext,
+  _swigc__p_wxGraphicsFont,
+  _swigc__p_wxGraphicsMatrix,
+  _swigc__p_wxGraphicsObject,
   _swigc__p_wxGraphicsPath,
+  _swigc__p_wxGraphicsPen,
+  _swigc__p_wxGraphicsRenderer,
   _swigc__p_wxGridBagSizer,
   _swigc__p_wxGridSizer,
   _swigc__p_wxHeaderButtonParams,
@@ -37326,6 +40736,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPixelDataBase,
   _swigc__p_wxPoint,
   _swigc__p_wxPoint2D,
+  _swigc__p_wxPoint2DDouble,
   _swigc__p_wxPostScriptDC,
   _swigc__p_wxPrintData,
   _swigc__p_wxPrinterDC,
@@ -37340,6 +40751,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_wxPyValidator,
   _swigc__p_wxQueryNewPaletteEvent,
   _swigc__p_wxRect,
+  _swigc__p_wxRect2DDouble,
   _swigc__p_wxRegion,
   _swigc__p_wxRegionIterator,
   _swigc__p_wxRendererNative,
@@ -38253,6 +41665,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "PLATFORM_MAC",SWIG_From_int(static_cast< int >(wxPLATFORM_MAC)));
   SWIG_Python_SetConstant(d, "BUFFER_VIRTUAL_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_VIRTUAL_AREA)));
   SWIG_Python_SetConstant(d, "BUFFER_CLIENT_AREA",SWIG_From_int(static_cast< int >(wxBUFFER_CLIENT_AREA)));
+  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
+  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_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)));
@@ -38295,7 +41711,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "StockGDI_PEN_TRANSPARENT",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_TRANSPARENT)));
   SWIG_Python_SetConstant(d, "StockGDI_PEN_WHITE",SWIG_From_int(static_cast< int >(wxStockGDI::PEN_WHITE)));
   SWIG_Python_SetConstant(d, "StockGDI_ITEMCOUNT",SWIG_From_int(static_cast< int >(wxStockGDI::ITEMCOUNT)));
-  PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
   SWIG_addvarlink(SWIG_globals(),(char*)"NullBitmap",NullBitmap_get, NullBitmap_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullIcon",NullIcon_get, NullIcon_set);
   SWIG_addvarlink(SWIG_globals(),(char*)"NullCursor",NullCursor_get, NullCursor_set);
index 90289ded6777fd11e3111cbbbaa01170a16fb5af..3a0fb3b85b81b6e9381a7f5489510832b78841ed 100644 (file)
@@ -405,6 +405,10 @@ class TopLevelWindow(_core.Window):
         """GetTitle(self) -> String"""
         return _windows_.TopLevelWindow_GetTitle(*args, **kwargs)
 
+    def EnableCloseButton(*args, **kwargs):
+        """EnableCloseButton(self, bool enable) -> bool"""
+        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
+
     def SetShape(*args, **kwargs):
         """SetShape(self, Region region) -> bool"""
         return _windows_.TopLevelWindow_SetShape(*args, **kwargs)
@@ -434,10 +438,6 @@ class TopLevelWindow(_core.Window):
         return _windows_.TopLevelWindow_CenterOnScreen(*args, **kwargs)
 
     CentreOnScreen = CenterOnScreen 
-    def EnableCloseButton(*args, **kwargs):
-        """EnableCloseButton(self, bool enable=True) -> bool"""
-        return _windows_.TopLevelWindow_EnableCloseButton(*args, **kwargs)
-
     def GetDefaultItem(*args, **kwargs):
         """
         GetDefaultItem(self) -> Window
@@ -4419,6 +4419,54 @@ class Printout(_core.Object):
         """SetDC(self, DC dc)"""
         return _windows_.Printout_SetDC(*args, **kwargs)
 
+    def FitThisSizeToPaper(*args, **kwargs):
+        """FitThisSizeToPaper(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPaper(*args, **kwargs)
+
+    def FitThisSizeToPage(*args, **kwargs):
+        """FitThisSizeToPage(self, Size imageSize)"""
+        return _windows_.Printout_FitThisSizeToPage(*args, **kwargs)
+
+    def FitThisSizeToPageMargins(*args, **kwargs):
+        """FitThisSizeToPageMargins(self, Size imageSize, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_FitThisSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToPaper(*args, **kwargs):
+        """MapScreenSizeToPaper(self)"""
+        return _windows_.Printout_MapScreenSizeToPaper(*args, **kwargs)
+
+    def MapScreenSizeToPage(*args, **kwargs):
+        """MapScreenSizeToPage(self)"""
+        return _windows_.Printout_MapScreenSizeToPage(*args, **kwargs)
+
+    def MapScreenSizeToPageMargins(*args, **kwargs):
+        """MapScreenSizeToPageMargins(self, PageSetupDialogData pageSetupData)"""
+        return _windows_.Printout_MapScreenSizeToPageMargins(*args, **kwargs)
+
+    def MapScreenSizeToDevice(*args, **kwargs):
+        """MapScreenSizeToDevice(self)"""
+        return _windows_.Printout_MapScreenSizeToDevice(*args, **kwargs)
+
+    def GetLogicalPaperRect(*args, **kwargs):
+        """GetLogicalPaperRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPaperRect(*args, **kwargs)
+
+    def GetLogicalPageRect(*args, **kwargs):
+        """GetLogicalPageRect(self) -> Rect"""
+        return _windows_.Printout_GetLogicalPageRect(*args, **kwargs)
+
+    def GetLogicalPageMarginsRect(*args, **kwargs):
+        """GetLogicalPageMarginsRect(self, PageSetupDialogData pageSetupData) -> Rect"""
+        return _windows_.Printout_GetLogicalPageMarginsRect(*args, **kwargs)
+
+    def SetLogicalOrigin(*args, **kwargs):
+        """SetLogicalOrigin(self, int x, int y)"""
+        return _windows_.Printout_SetLogicalOrigin(*args, **kwargs)
+
+    def OffsetLogicalOrigin(*args, **kwargs):
+        """OffsetLogicalOrigin(self, int xoff, int yoff)"""
+        return _windows_.Printout_OffsetLogicalOrigin(*args, **kwargs)
+
     def SetPageSizePixels(*args, **kwargs):
         """SetPageSizePixels(self, int w, int h)"""
         return _windows_.Printout_SetPageSizePixels(*args, **kwargs)
@@ -4451,6 +4499,14 @@ class Printout(_core.Object):
         """GetPPIPrinter() -> (x,y)"""
         return _windows_.Printout_GetPPIPrinter(*args, **kwargs)
 
+    def SetPaperRectPixels(*args, **kwargs):
+        """SetPaperRectPixels(self, Rect paperRectPixels)"""
+        return _windows_.Printout_SetPaperRectPixels(*args, **kwargs)
+
+    def GetPaperRectPixels(*args, **kwargs):
+        """GetPaperRectPixels(self) -> Rect"""
+        return _windows_.Printout_GetPaperRectPixels(*args, **kwargs)
+
     def IsPreview(*args, **kwargs):
         """IsPreview(self) -> bool"""
         return _windows_.Printout_IsPreview(*args, **kwargs)
index e69716229bf98762dcfcfde7347c7cadb0967cac..6f52c8e611da70fdf35f77c7939a09633112823d 100644 (file)
@@ -5824,6 +5824,47 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
+  bool arg2 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "enable", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
+  }
+  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
+  ecode2 = SWIG_AsVal_bool(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
+  } 
+  arg2 = static_cast< bool >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EnableCloseButton(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_TopLevelWindow_SetShape(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -6046,49 +6087,6 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_TopLevelWindow_EnableCloseButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
-  PyObject *resultobj = 0;
-  wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
-  bool arg2 = (bool) true ;
-  bool result;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  bool val2 ;
-  int ecode2 = 0 ;
-  PyObject * obj0 = 0 ;
-  PyObject * obj1 = 0 ;
-  char *  kwnames[] = {
-    (char *) "self",(char *) "enable", NULL 
-  };
-  
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:TopLevelWindow_EnableCloseButton",kwnames,&obj0,&obj1)) SWIG_fail;
-  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxTopLevelWindow, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "1"" of type '" "wxTopLevelWindow *""'"); 
-  }
-  arg1 = reinterpret_cast< wxTopLevelWindow * >(argp1);
-  if (obj1) {
-    ecode2 = SWIG_AsVal_bool(obj1, &val2);
-    if (!SWIG_IsOK(ecode2)) {
-      SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "TopLevelWindow_EnableCloseButton" "', expected argument " "2"" of type '" "bool""'");
-    } 
-    arg2 = static_cast< bool >(val2);
-  }
-  {
-    PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)(arg1)->EnableCloseButton(arg2);
-    wxPyEndAllowThreads(__tstate);
-    if (PyErr_Occurred()) SWIG_fail;
-  }
-  {
-    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-  }
-  return resultobj;
-fail:
-  return NULL;
-}
-
-
 SWIGINTERN PyObject *_wrap_TopLevelWindow_GetDefaultItem(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxTopLevelWindow *arg1 = (wxTopLevelWindow *) 0 ;
@@ -28049,6 +28047,440 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPaper",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPaper((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_FitThisSizeToPage",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPage((wxSize const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_FitThisSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxSize *arg2 = 0 ;
+  wxPageSetupDialogData *arg3 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxSize temp2 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "imageSize",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_FitThisSizeToPageMargins",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxSize_helper(obj1, &arg2)) SWIG_fail;
+  }
+  res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp3) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_FitThisSizeToPageMargins" "', expected argument " "3"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg3 = reinterpret_cast< wxPageSetupDialogData * >(argp3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->FitThisSizeToPageMargins((wxSize const &)*arg2,(wxPageSetupDialogData const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPaper(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPaper" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPaper();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPage(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPage" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPage();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToPageMargins(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *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 *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_MapScreenSizeToPageMargins",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_MapScreenSizeToPageMargins" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToPageMargins((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_MapScreenSizeToDevice(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_MapScreenSizeToDevice" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->MapScreenSizeToDevice();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPaperRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPaperRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPaperRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageRect();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetLogicalPageMarginsRect(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxPageSetupDialogData *arg2 = 0 ;
+  wxRect result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "pageSetupData", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_GetLogicalPageMarginsRect",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPageSetupDialogData,  0  | 0);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  if (!argp2) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Printout_GetLogicalPageMarginsRect" "', expected argument " "2"" of type '" "wxPageSetupDialogData const &""'"); 
+  }
+  arg2 = reinterpret_cast< wxPageSetupDialogData * >(argp2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetLogicalPageMarginsRect((wxPageSetupDialogData const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_SetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "x",(char *) "y", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_SetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_SetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_OffsetLogicalOrigin(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  int arg2 ;
+  int arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  int val3 ;
+  int ecode3 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "xoff",(char *) "yoff", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:Printout_OffsetLogicalOrigin",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  ecode3 = SWIG_AsVal_int(obj2, &val3);
+  if (!SWIG_IsOK(ecode3)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Printout_OffsetLogicalOrigin" "', expected argument " "3"" of type '" "int""'");
+  } 
+  arg3 = static_cast< int >(val3);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->OffsetLogicalOrigin(arg2,arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_SetPageSizePixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -28425,6 +28857,70 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_Printout_SetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect *arg2 = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  wxRect temp2 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "paperRectPixels", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:Printout_SetPaperRectPixels",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_SetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    arg2 = &temp2;
+    if ( ! wxRect_helper(obj1, &arg2)) SWIG_fail;
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetPaperRectPixels((wxRect const &)*arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_Printout_GetPaperRectPixels(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
+  wxRect 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_wxPyPrintout, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Printout_GetPaperRectPixels" "', expected argument " "1"" of type '" "wxPyPrintout const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPyPrintout * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = ((wxPyPrintout const *)arg1)->GetPaperRectPixels();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_NewPointerObj((new wxRect(static_cast< const wxRect& >(result))), SWIGTYPE_p_wxRect, SWIG_POINTER_OWN |  0 );
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_Printout_IsPreview(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxPyPrintout *arg1 = (wxPyPrintout *) 0 ;
@@ -31116,13 +31612,13 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"TopLevelWindow_IsFullScreen", (PyCFunction)_wrap_TopLevelWindow_IsFullScreen, METH_O, NULL},
         { (char *)"TopLevelWindow_SetTitle", (PyCFunction) _wrap_TopLevelWindow_SetTitle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetTitle", (PyCFunction)_wrap_TopLevelWindow_GetTitle, METH_O, NULL},
+        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetShape", (PyCFunction) _wrap_TopLevelWindow_SetShape, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_RequestUserAttention", (PyCFunction) _wrap_TopLevelWindow_RequestUserAttention, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_IsActive", (PyCFunction)_wrap_TopLevelWindow_IsActive, METH_O, NULL},
         { (char *)"TopLevelWindow_MacSetMetalAppearance", (PyCFunction) _wrap_TopLevelWindow_MacSetMetalAppearance, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_MacGetMetalAppearance", (PyCFunction)_wrap_TopLevelWindow_MacGetMetalAppearance, METH_O, NULL},
         { (char *)"TopLevelWindow_CenterOnScreen", (PyCFunction) _wrap_TopLevelWindow_CenterOnScreen, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"TopLevelWindow_EnableCloseButton", (PyCFunction) _wrap_TopLevelWindow_EnableCloseButton, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_GetDefaultItem", (PyCFunction)_wrap_TopLevelWindow_GetDefaultItem, METH_O, NULL},
         { (char *)"TopLevelWindow_SetDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"TopLevelWindow_SetTmpDefaultItem", (PyCFunction) _wrap_TopLevelWindow_SetTmpDefaultItem, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31736,6 +32232,18 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetTitle", (PyCFunction)_wrap_Printout_GetTitle, METH_O, NULL},
         { (char *)"Printout_GetDC", (PyCFunction)_wrap_Printout_GetDC, METH_O, NULL},
         { (char *)"Printout_SetDC", (PyCFunction) _wrap_Printout_SetDC, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPaper", (PyCFunction) _wrap_Printout_FitThisSizeToPaper, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPage", (PyCFunction) _wrap_Printout_FitThisSizeToPage, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_FitThisSizeToPageMargins", (PyCFunction) _wrap_Printout_FitThisSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToPaper", (PyCFunction)_wrap_Printout_MapScreenSizeToPaper, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPage", (PyCFunction)_wrap_Printout_MapScreenSizeToPage, METH_O, NULL},
+        { (char *)"Printout_MapScreenSizeToPageMargins", (PyCFunction) _wrap_Printout_MapScreenSizeToPageMargins, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_MapScreenSizeToDevice", (PyCFunction)_wrap_Printout_MapScreenSizeToDevice, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPaperRect", (PyCFunction)_wrap_Printout_GetLogicalPaperRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageRect", (PyCFunction)_wrap_Printout_GetLogicalPageRect, METH_O, NULL},
+        { (char *)"Printout_GetLogicalPageMarginsRect", (PyCFunction) _wrap_Printout_GetLogicalPageMarginsRect, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_SetLogicalOrigin", (PyCFunction) _wrap_Printout_SetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_OffsetLogicalOrigin", (PyCFunction) _wrap_Printout_OffsetLogicalOrigin, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_SetPageSizePixels", (PyCFunction) _wrap_Printout_SetPageSizePixels, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPageSizePixels", (PyCFunction)_wrap_Printout_GetPageSizePixels, METH_O, NULL},
         { (char *)"Printout_SetPageSizeMM", (PyCFunction) _wrap_Printout_SetPageSizeMM, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -31744,6 +32252,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"Printout_GetPPIScreen", (PyCFunction)_wrap_Printout_GetPPIScreen, METH_O, NULL},
         { (char *)"Printout_SetPPIPrinter", (PyCFunction) _wrap_Printout_SetPPIPrinter, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_GetPPIPrinter", (PyCFunction)_wrap_Printout_GetPPIPrinter, METH_O, NULL},
+        { (char *)"Printout_SetPaperRectPixels", (PyCFunction) _wrap_Printout_SetPaperRectPixels, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"Printout_GetPaperRectPixels", (PyCFunction)_wrap_Printout_GetPaperRectPixels, METH_O, NULL},
         { (char *)"Printout_IsPreview", (PyCFunction)_wrap_Printout_IsPreview, METH_O, NULL},
         { (char *)"Printout_SetIsPreview", (PyCFunction) _wrap_Printout_SetIsPreview, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"Printout_OnBeginDocument", (PyCFunction) _wrap_Printout_OnBeginDocument, METH_VARARGS | METH_KEYWORDS, NULL},
index 54e6c6d6ef7587977fe31cb4c25c3de039eb3d81..592182271ca1f14c3293ffc0192aa5d8e855a244 100644 (file)
@@ -166,9 +166,10 @@ AUI_MGR_ALLOW_FLOATING = _aui.AUI_MGR_ALLOW_FLOATING
 AUI_MGR_ALLOW_ACTIVE_PANE = _aui.AUI_MGR_ALLOW_ACTIVE_PANE
 AUI_MGR_TRANSPARENT_DRAG = _aui.AUI_MGR_TRANSPARENT_DRAG
 AUI_MGR_TRANSPARENT_HINT = _aui.AUI_MGR_TRANSPARENT_HINT
-AUI_MGR_TRANSPARENT_HINT_FADE = _aui.AUI_MGR_TRANSPARENT_HINT_FADE
-AUI_MGR_DISABLE_VENETIAN_BLINDS = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS
-AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE
+AUI_MGR_VENETIAN_BLINDS_HINT = _aui.AUI_MGR_VENETIAN_BLINDS_HINT
+AUI_MGR_RECTANGLE_HINT = _aui.AUI_MGR_RECTANGLE_HINT
+AUI_MGR_HINT_FADE = _aui.AUI_MGR_HINT_FADE
+AUI_MGR_NO_VENETIAN_BLINDS_FADE = _aui.AUI_MGR_NO_VENETIAN_BLINDS_FADE
 AUI_MGR_DEFAULT = _aui.AUI_MGR_DEFAULT
 AUI_ART_SASH_SIZE = _aui.AUI_ART_SASH_SIZE
 AUI_ART_CAPTION_SIZE = _aui.AUI_ART_CAPTION_SIZE
index cd84a1d6ffc7fc555a9650035cd48211eb62d8e1..a46115a997c76115af473c89123f3d44e161bdfe 100644 (file)
@@ -16262,9 +16262,10 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "AUI_MGR_ALLOW_ACTIVE_PANE",SWIG_From_int(static_cast< int >(wxAUI_MGR_ALLOW_ACTIVE_PANE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_DRAG",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_DRAG)));
   SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_TRANSPARENT_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_TRANSPARENT_HINT_FADE)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS)));
-  SWIG_Python_SetConstant(d, "AUI_MGR_DISABLE_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_DISABLE_VENETIAN_BLINDS_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_VENETIAN_BLINDS_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_VENETIAN_BLINDS_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_RECTANGLE_HINT",SWIG_From_int(static_cast< int >(wxAUI_MGR_RECTANGLE_HINT)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_HINT_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_HINT_FADE)));
+  SWIG_Python_SetConstant(d, "AUI_MGR_NO_VENETIAN_BLINDS_FADE",SWIG_From_int(static_cast< int >(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE)));
   SWIG_Python_SetConstant(d, "AUI_MGR_DEFAULT",SWIG_From_int(static_cast< int >(wxAUI_MGR_DEFAULT)));
   SWIG_Python_SetConstant(d, "AUI_ART_SASH_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_SASH_SIZE)));
   SWIG_Python_SetConstant(d, "AUI_ART_CAPTION_SIZE",SWIG_From_int(static_cast< int >(wxAUI_ART_CAPTION_SIZE)));
index e5efed0aea44bc8473db180e6a35edbd6ea779b6..fd57a8316dc5bce650f7f0e2741954b6f6a4a472 100644 (file)
@@ -107,7 +107,6 @@ TEXT_ATTR_CHARACTER_STYLE_NAME = _richtext.TEXT_ATTR_CHARACTER_STYLE_NAME
 TEXT_ATTR_PARAGRAPH_STYLE_NAME = _richtext.TEXT_ATTR_PARAGRAPH_STYLE_NAME
 TEXT_ATTR_BULLET_STYLE = _richtext.TEXT_ATTR_BULLET_STYLE
 TEXT_ATTR_BULLET_NUMBER = _richtext.TEXT_ATTR_BULLET_NUMBER
-TEXT_ATTR_BULLET_SYMBOL = _richtext.TEXT_ATTR_BULLET_SYMBOL
 TEXT_ATTR_BULLET_STYLE_NONE = _richtext.TEXT_ATTR_BULLET_STYLE_NONE
 TEXT_ATTR_BULLET_STYLE_ARABIC = _richtext.TEXT_ATTR_BULLET_STYLE_ARABIC
 TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER = _richtext.TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER
@@ -368,9 +367,9 @@ class RichTextAttr(object):
         """SetBulletNumber(self, int n)"""
         return _richtext.RichTextAttr_SetBulletNumber(*args, **kwargs)
 
-    def SetBulletSymbol(*args, **kwargs):
-        """SetBulletSymbol(self, wxChar symbol)"""
-        return _richtext.RichTextAttr_SetBulletSymbol(*args, **kwargs)
+    def SetBulletText(*args, **kwargs):
+        """SetBulletText(self, wxChar symbol)"""
+        return _richtext.RichTextAttr_SetBulletText(*args, **kwargs)
 
     def SetBulletFont(*args, **kwargs):
         """SetBulletFont(self, String bulletFont)"""
@@ -456,9 +455,9 @@ class RichTextAttr(object):
         """GetBulletNumber(self) -> int"""
         return _richtext.RichTextAttr_GetBulletNumber(*args, **kwargs)
 
-    def GetBulletSymbol(*args, **kwargs):
-        """GetBulletSymbol(self) -> wxChar"""
-        return _richtext.RichTextAttr_GetBulletSymbol(*args, **kwargs)
+    def GetBulletText(*args, **kwargs):
+        """GetBulletText(self) -> String"""
+        return _richtext.RichTextAttr_GetBulletText(*args, **kwargs)
 
     def GetBulletFont(*args, **kwargs):
         """GetBulletFont(self) -> String"""
@@ -540,9 +539,9 @@ class RichTextAttr(object):
         """HasBulletNumber(self) -> bool"""
         return _richtext.RichTextAttr_HasBulletNumber(*args, **kwargs)
 
-    def HasBulletSymbol(*args, **kwargs):
-        """HasBulletSymbol(self) -> bool"""
-        return _richtext.RichTextAttr_HasBulletSymbol(*args, **kwargs)
+    def HasBulletText(*args, **kwargs):
+        """HasBulletText(self) -> bool"""
+        return _richtext.RichTextAttr_HasBulletText(*args, **kwargs)
 
     def HasFlag(*args, **kwargs):
         """HasFlag(self, long flag) -> bool"""
@@ -565,7 +564,7 @@ class RichTextAttr(object):
     BulletFont = property(GetBulletFont,SetBulletFont,doc="See `GetBulletFont` and `SetBulletFont`") 
     BulletNumber = property(GetBulletNumber,SetBulletNumber,doc="See `GetBulletNumber` and `SetBulletNumber`") 
     BulletStyle = property(GetBulletStyle,SetBulletStyle,doc="See `GetBulletStyle` and `SetBulletStyle`") 
-    BulletSymbol = property(GetBulletSymbol,SetBulletSymbol,doc="See `GetBulletSymbol` and `SetBulletSymbol`") 
+    BulletText = property(GetBulletText,SetBulletText,doc="See `GetBulletText` and `SetBulletText`") 
     CharacterStyleName = property(GetCharacterStyleName,SetCharacterStyleName,doc="See `GetCharacterStyleName` and `SetCharacterStyleName`") 
     Flags = property(GetFlags,SetFlags,doc="See `GetFlags` and `SetFlags`") 
     Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
@@ -721,6 +720,22 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """
         return _richtext.RichTextCtrl_SaveFile(*args, **kwargs)
 
+    def SetHandlerFlags(*args, **kwargs):
+        """
+        SetHandlerFlags(self, int flags)
+
+        Set the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_SetHandlerFlags(*args, **kwargs)
+
+    def GetHandlerFlags(*args, **kwargs):
+        """
+        GetHandlerFlags(self) -> int
+
+        Get the handler flags, controlling loading and saving.
+        """
+        return _richtext.RichTextCtrl_GetHandlerFlags(*args, **kwargs)
+
     def MarkDirty(*args, **kwargs):
         """
         MarkDirty(self)
@@ -1158,7 +1173,7 @@ class RichTextCtrl(_windows.ScrolledWindow):
         return _richtext.RichTextCtrl_EndNumberedBullet(*args, **kwargs)
 
     def BeginSymbolBullet(*args, **kwargs):
-        """BeginSymbolBullet(self, char symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
+        """BeginSymbolBullet(self, String symbol, int leftIndent, int leftSubIndent, int bulletStyle=TEXT_ATTR_BULLET_STYLE_SYMBOL) -> bool"""
         return _richtext.RichTextCtrl_BeginSymbolBullet(*args, **kwargs)
 
     def EndSymbolBullet(*args, **kwargs):
@@ -1181,6 +1196,38 @@ class RichTextCtrl(_windows.ScrolledWindow):
         """EndParagraphStyle(self) -> bool"""
         return _richtext.RichTextCtrl_EndParagraphStyle(*args, **kwargs)
 
+    def BeginListStyle(*args, **kwargs):
+        """
+        BeginListStyle(self, String listStyle, int level=1, int number=1) -> bool
+
+        Begin named list style.
+        """
+        return _richtext.RichTextCtrl_BeginListStyle(*args, **kwargs)
+
+    def EndListStyle(*args, **kwargs):
+        """
+        EndListStyle(self) -> bool
+
+        End named list style.
+        """
+        return _richtext.RichTextCtrl_EndListStyle(*args, **kwargs)
+
+    def BeginURL(*args, **kwargs):
+        """
+        BeginURL(self, String url, String characterStyle=wxEmptyString) -> bool
+
+        Begin URL.
+        """
+        return _richtext.RichTextCtrl_BeginURL(*args, **kwargs)
+
+    def EndURL(*args, **kwargs):
+        """
+        EndURL(self) -> bool
+
+        End URL.
+        """
+        return _richtext.RichTextCtrl_EndURL(*args, **kwargs)
+
     def SetDefaultStyleToCursorStyle(*args, **kwargs):
         """SetDefaultStyleToCursorStyle(self) -> bool"""
         return _richtext.RichTextCtrl_SetDefaultStyleToCursorStyle(*args, **kwargs)
@@ -1388,6 +1435,10 @@ wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_RIGHT_CLIC
 wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK = _richtext.wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK
 wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK = _richtext.wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK
 wxEVT_COMMAND_RICHTEXT_RETURN = _richtext.wxEVT_COMMAND_RICHTEXT_RETURN
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING
+wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED = _richtext.wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED
 EVT_RICHTEXT_ITEM_SELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_SELECTED, 1)
 EVT_RICHTEXT_ITEM_DESELECTED = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_ITEM_DESELECTED, 1)
 EVT_RICHTEXT_LEFT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, 1)
@@ -1395,6 +1446,10 @@ EVT_RICHTEXT_RIGHT_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK,
 EVT_RICHTEXT_MIDDLE_CLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, 1)
 EVT_RICHTEXT_LEFT_DCLICK = wx.PyEventBinder(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, 1)
 EVT_RICHTEXT_RETURN = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_RETURN, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING, 1)
+EVT_RICHTEXT_STYLESHEET_CHANGED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACING = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING, 1)
+EVT_RICHTEXT_STYLESHEET_REPLACED = wx.PyEventBinder( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED, 1)
 
 class RichTextEvent(_core.NotifyEvent):
     """Proxy of C++ RichTextEvent class"""
index 92b3fe7ae364442d0f0e306e9c8c7298612c40cf..193ec327b2557238e871b715d5ae26b31d9a0a6c 100644 (file)
@@ -2854,114 +2854,6 @@ SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val)
     return SWIG_OK;
 }
 
-
-SWIGINTERN swig_type_info*
-SWIG_pchar_descriptor()
-{
-  static int init = 0;
-  static swig_type_info* info = 0;
-  if (!init) {
-    info = SWIG_TypeQuery("_p_char");
-    init = 1;
-  }
-  return info;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
-{
-  if (PyString_Check(obj)) {
-    char *cstr; Py_ssize_t len;
-    PyString_AsStringAndSize(obj, &cstr, &len);
-    if (cptr)  {
-      if (alloc) {
-       /* 
-          In python the user should not be able to modify the inner
-          string representation. To warranty that, if you define
-          SWIG_PYTHON_SAFE_CSTRINGS, a new/copy of the python string
-          buffer is always returned.
-
-          The default behavior is just to return the pointer value,
-          so, be careful.
-       */ 
-#if defined(SWIG_PYTHON_SAFE_CSTRINGS)
-       if (*alloc != SWIG_OLDOBJ) 
-#else
-       if (*alloc == SWIG_NEWOBJ) 
-#endif
-         {
-           *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
-           *alloc = SWIG_NEWOBJ;
-         }
-       else {
-         *cptr = cstr;
-         *alloc = SWIG_OLDOBJ;
-       }
-      } else {
-       *cptr = PyString_AsString(obj);
-      }
-    }
-    if (psize) *psize = len + 1;
-    return SWIG_OK;
-  } else {
-    swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
-    if (pchar_descriptor) {
-      void* vptr = 0;
-      if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
-       if (cptr) *cptr = (char *) vptr;
-       if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0;
-       if (alloc) *alloc = SWIG_OLDOBJ;
-       return SWIG_OK;
-      }
-    }
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsCharArray(PyObject * obj, char *val, size_t size)
-{ 
-  char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
-  int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
-  if (SWIG_IsOK(res)) {
-    if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;
-    if (csize <= size) {
-      if (val) {
-       if (csize) memcpy(val, cptr, csize*sizeof(char));
-       if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
-      }
-      if (alloc == SWIG_NEWOBJ) {
-       delete[] cptr;
-       res = SWIG_DelNewMask(res);
-      }      
-      return res;
-    }
-    if (alloc == SWIG_NEWOBJ) delete[] cptr;
-  }
-  return SWIG_TypeError;
-}
-
-
-SWIGINTERN int
-SWIG_AsVal_char (PyObject * obj, char *val)
-{    
-  int res = SWIG_AsCharArray(obj, val, 1);
-  if (!SWIG_IsOK(res)) {
-    long v;
-    res = SWIG_AddCast(SWIG_AsVal_long (obj, &v));
-    if (SWIG_IsOK(res)) {
-      if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
-       if (val) *val = static_cast< char >(v);
-      } else {
-       res = SWIG_OverflowError;
-      }
-    }
-  }
-  return res;
-}
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -4520,7 +4412,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   wxChar arg2 ;
@@ -4534,19 +4426,19 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
     (char *) "self",(char *) "symbol", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletSymbol",kwnames,&obj0,&obj1)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextAttr_SetBulletText",kwnames,&obj0,&obj1)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxChar,  0  | 0);
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'"); 
+      SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'"); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletSymbol" "', expected argument " "2"" of type '" "wxChar""'");
+      SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RichTextAttr_SetBulletText" "', expected argument " "2"" of type '" "wxChar""'");
     } else {
       wxChar * temp = reinterpret_cast< wxChar * >(argp2);
       arg2 = *temp;
@@ -4555,7 +4447,7 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_SetBulletSymbol(PyObject *SWIGUNUSEDPARM
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->SetBulletSymbol(arg2);
+    (arg1)->SetBulletText(arg2);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -5211,10 +5103,10 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
-  wxChar result;
+  wxString *result = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
@@ -5223,16 +5115,25 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_GetBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_GetBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = ((wxRichTextAttr const *)arg1)->GetBulletSymbol();
+    {
+      wxString const &_result_ref = ((wxRichTextAttr const *)arg1)->GetBulletText();
+      result = (wxString *) &_result_ref;
+    }
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
-  resultobj = SWIG_NewPointerObj((new wxChar(static_cast< const wxChar& >(result))), SWIGTYPE_p_wxChar, SWIG_POINTER_OWN |  0 );
+  {
+#if wxUSE_UNICODE
+    resultobj = PyUnicode_FromWideChar(result->c_str(), result->Len());
+#else
+    resultobj = PyString_FromStringAndSize(result->c_str(), result->Len());
+#endif
+  }
   return resultobj;
 fail:
   return NULL;
@@ -5846,7 +5747,7 @@ fail:
 }
 
 
-SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletText(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextAttr *arg1 = (wxRichTextAttr *) 0 ;
   bool result;
@@ -5858,12 +5759,12 @@ SWIGINTERN PyObject *_wrap_RichTextAttr_HasBulletSymbol(PyObject *SWIGUNUSEDPARM
   swig_obj[0] = args;
   res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxRichTextAttr, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletSymbol" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextAttr_HasBulletText" "', expected argument " "1"" of type '" "wxRichTextAttr const *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextAttr * >(argp1);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletSymbol();
+    result = (bool)((wxRichTextAttr const *)arg1)->HasBulletText();
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -7080,6 +6981,72 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_SetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  int arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "flags", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:RichTextCtrl_SetHandlerFlags",kwnames,&obj0,&obj1)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  ecode2 = SWIG_AsVal_int(obj1, &val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_SetHandlerFlags" "', expected argument " "2"" of type '" "int""'");
+  } 
+  arg2 = static_cast< int >(val2);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    (arg1)->SetHandlerFlags(arg2);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_GetHandlerFlags(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_GetHandlerFlags" "', expected argument " "1"" of type '" "wxRichTextCtrl const *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (int)((wxRichTextCtrl const *)arg1)->GetHandlerFlags();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_From_int(static_cast< int >(result));
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_MarkDirty(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -9618,15 +9585,14 @@ fail:
 SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
-  char arg2 ;
+  wxString *arg2 = 0 ;
   int arg3 ;
   int arg4 ;
   int arg5 = (int) wxTEXT_ATTR_BULLET_STYLE_SYMBOL ;
   bool result;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char val2 ;
-  int ecode2 = 0 ;
+  bool temp2 = false ;
   int val3 ;
   int ecode3 = 0 ;
   int val4 ;
@@ -9648,11 +9614,11 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
   }
   arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
-  ecode2 = SWIG_AsVal_char(obj1, &val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "2"" of type '" "char""'");
-  } 
-  arg2 = static_cast< char >(val2);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
   ecode3 = SWIG_AsVal_int(obj2, &val3);
   if (!SWIG_IsOK(ecode3)) {
     SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginSymbolBullet" "', expected argument " "3"" of type '" "int""'");
@@ -9672,15 +9638,23 @@ SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginSymbolBullet(PyObject *SWIGUNUSEDPA
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    result = (bool)(arg1)->BeginSymbolBullet(arg2,arg3,arg4,arg5);
+    result = (bool)(arg1)->BeginSymbolBullet((wxString const &)*arg2,arg3,arg4,arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   {
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
   }
+  {
+    if (temp2)
+    delete arg2;
+  }
   return resultobj;
 fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
   return NULL;
 }
 
@@ -9871,6 +9845,203 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  int arg3 = (int) 1 ;
+  int arg4 = (int) 1 ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  int val3 ;
+  int ecode3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  PyObject * obj3 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "listStyle",(char *) "level",(char *) "number", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:RichTextCtrl_BeginListStyle",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    ecode3 = SWIG_AsVal_int(obj2, &val3);
+    if (!SWIG_IsOK(ecode3)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "3"" of type '" "int""'");
+    } 
+    arg3 = static_cast< int >(val3);
+  }
+  if (obj3) {
+    ecode4 = SWIG_AsVal_int(obj3, &val4);
+    if (!SWIG_IsOK(ecode4)) {
+      SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "RichTextCtrl_BeginListStyle" "', expected argument " "4"" of type '" "int""'");
+    } 
+    arg4 = static_cast< int >(val4);
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginListStyle((wxString const &)*arg2,arg3,arg4);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndListStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndListStyle" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndListStyle();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_BeginURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  wxString *arg2 = 0 ;
+  wxString const &arg3_defvalue = wxEmptyString ;
+  wxString *arg3 = (wxString *) &arg3_defvalue ;
+  bool result;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  bool temp2 = false ;
+  bool temp3 = false ;
+  PyObject * obj0 = 0 ;
+  PyObject * obj1 = 0 ;
+  PyObject * obj2 = 0 ;
+  char *  kwnames[] = {
+    (char *) "self",(char *) "url",(char *) "characterStyle", NULL 
+  };
+  
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:RichTextCtrl_BeginURL",kwnames,&obj0,&obj1,&obj2)) SWIG_fail;
+  res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_BeginURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    arg2 = wxString_in_helper(obj1);
+    if (arg2 == NULL) SWIG_fail;
+    temp2 = true;
+  }
+  if (obj2) {
+    {
+      arg3 = wxString_in_helper(obj2);
+      if (arg3 == NULL) SWIG_fail;
+      temp3 = true;
+    }
+  }
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->BeginURL((wxString const &)*arg2,(wxString const &)*arg3);
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return resultobj;
+fail:
+  {
+    if (temp2)
+    delete arg2;
+  }
+  {
+    if (temp3)
+    delete arg3;
+  }
+  return NULL;
+}
+
+
+SWIGINTERN PyObject *_wrap_RichTextCtrl_EndURL(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
+  bool 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_wxRichTextCtrl, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RichTextCtrl_EndURL" "', expected argument " "1"" of type '" "wxRichTextCtrl *""'"); 
+  }
+  arg1 = reinterpret_cast< wxRichTextCtrl * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    result = (bool)(arg1)->EndURL();
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  {
+    resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+  }
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
   wxRichTextCtrl *arg1 = (wxRichTextCtrl *) 0 ;
@@ -11915,7 +12086,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_SetLineSpacing", (PyCFunction) _wrap_RichTextAttr_SetLineSpacing, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletStyle", (PyCFunction) _wrap_RichTextAttr_SetBulletStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletNumber", (PyCFunction) _wrap_RichTextAttr_SetBulletNumber, METH_VARARGS | METH_KEYWORDS, NULL},
-        { (char *)"RichTextAttr_SetBulletSymbol", (PyCFunction) _wrap_RichTextAttr_SetBulletSymbol, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextAttr_SetBulletText", (PyCFunction) _wrap_RichTextAttr_SetBulletText, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_SetBulletFont", (PyCFunction) _wrap_RichTextAttr_SetBulletFont, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_GetTextColour", (PyCFunction)_wrap_RichTextAttr_GetTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_GetBackgroundColour", (PyCFunction)_wrap_RichTextAttr_GetBackgroundColour, METH_O, NULL},
@@ -11937,7 +12108,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_GetLineSpacing", (PyCFunction)_wrap_RichTextAttr_GetLineSpacing, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletStyle", (PyCFunction)_wrap_RichTextAttr_GetBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletNumber", (PyCFunction)_wrap_RichTextAttr_GetBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_GetBulletSymbol", (PyCFunction)_wrap_RichTextAttr_GetBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_GetBulletText", (PyCFunction)_wrap_RichTextAttr_GetBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_GetBulletFont", (PyCFunction)_wrap_RichTextAttr_GetBulletFont, METH_O, NULL},
         { (char *)"RichTextAttr_HasTextColour", (PyCFunction)_wrap_RichTextAttr_HasTextColour, METH_O, NULL},
         { (char *)"RichTextAttr_HasBackgroundColour", (PyCFunction)_wrap_RichTextAttr_HasBackgroundColour, METH_O, NULL},
@@ -11958,7 +12129,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextAttr_HasParagraphStyleName", (PyCFunction)_wrap_RichTextAttr_HasParagraphStyleName, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletStyle", (PyCFunction)_wrap_RichTextAttr_HasBulletStyle, METH_O, NULL},
         { (char *)"RichTextAttr_HasBulletNumber", (PyCFunction)_wrap_RichTextAttr_HasBulletNumber, METH_O, NULL},
-        { (char *)"RichTextAttr_HasBulletSymbol", (PyCFunction)_wrap_RichTextAttr_HasBulletSymbol, METH_O, NULL},
+        { (char *)"RichTextAttr_HasBulletText", (PyCFunction)_wrap_RichTextAttr_HasBulletText, METH_O, NULL},
         { (char *)"RichTextAttr_HasFlag", (PyCFunction) _wrap_RichTextAttr_HasFlag, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextAttr_IsCharacterStyle", (PyCFunction)_wrap_RichTextAttr_IsCharacterStyle, METH_O, NULL},
         { (char *)"RichTextAttr_IsParagraphStyle", (PyCFunction)_wrap_RichTextAttr_IsParagraphStyle, METH_O, NULL},
@@ -11989,6 +12160,8 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_Remove", (PyCFunction) _wrap_RichTextCtrl_Remove, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_LoadFile", (PyCFunction) _wrap_RichTextCtrl_LoadFile, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_SaveFile", (PyCFunction) _wrap_RichTextCtrl_SaveFile, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_SetHandlerFlags", (PyCFunction) _wrap_RichTextCtrl_SetHandlerFlags, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_GetHandlerFlags", (PyCFunction)_wrap_RichTextCtrl_GetHandlerFlags, METH_O, NULL},
         { (char *)"RichTextCtrl_MarkDirty", (PyCFunction)_wrap_RichTextCtrl_MarkDirty, METH_O, NULL},
         { (char *)"RichTextCtrl_DiscardEdits", (PyCFunction)_wrap_RichTextCtrl_DiscardEdits, METH_O, NULL},
         { (char *)"RichTextCtrl_SetMaxLength", (PyCFunction) _wrap_RichTextCtrl_SetMaxLength, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -12063,6 +12236,10 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"RichTextCtrl_EndCharacterStyle", (PyCFunction)_wrap_RichTextCtrl_EndCharacterStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_BeginParagraphStyle", (PyCFunction) _wrap_RichTextCtrl_BeginParagraphStyle, METH_VARARGS | METH_KEYWORDS, NULL},
         { (char *)"RichTextCtrl_EndParagraphStyle", (PyCFunction)_wrap_RichTextCtrl_EndParagraphStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginListStyle", (PyCFunction) _wrap_RichTextCtrl_BeginListStyle, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndListStyle", (PyCFunction)_wrap_RichTextCtrl_EndListStyle, METH_O, NULL},
+        { (char *)"RichTextCtrl_BeginURL", (PyCFunction) _wrap_RichTextCtrl_BeginURL, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"RichTextCtrl_EndURL", (PyCFunction)_wrap_RichTextCtrl_EndURL, METH_O, NULL},
         { (char *)"RichTextCtrl_SetDefaultStyleToCursorStyle", (PyCFunction)_wrap_RichTextCtrl_SetDefaultStyleToCursorStyle, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectNone", (PyCFunction)_wrap_RichTextCtrl_SelectNone, METH_O, NULL},
         { (char *)"RichTextCtrl_SelectWord", (PyCFunction) _wrap_RichTextCtrl_SelectWord, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -14269,7 +14446,6 @@ SWIGEXPORT void SWIG_init(void) {
   SWIG_Python_SetConstant(d, "TEXT_ATTR_PARAGRAPH_STYLE_NAME",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_PARAGRAPH_STYLE_NAME)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_NUMBER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_NUMBER)));
-  SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_SYMBOL",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_SYMBOL)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_NONE",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_NONE)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_ARABIC",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_ARABIC)));
   SWIG_Python_SetConstant(d, "TEXT_ATTR_BULLET_STYLE_LETTERS_UPPER",SWIG_From_int(static_cast< int >(wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER)));
@@ -14302,6 +14478,10 @@ SWIGEXPORT void SWIG_init(void) {
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK));
   PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_RETURN", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_RETURN));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING));
+  PyDict_SetItemString(d, "wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED", PyInt_FromLong(wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED));
   
   wxRichTextModuleInit();
   
index 9575e1663f257343d1b35778f6d10a73fcd267da..3d26ec5ccb94920f1c4456b382caee679966111a 100644 (file)
@@ -2775,7 +2775,7 @@ IMP_PYCALLBACK_OBJECT_STRING_pure(wxPyXmlSubclassFactory, wxXmlSubclassFactory,
 class wxPyXmlResourceHandler : public wxXmlResourceHandler {
 public:
     wxPyXmlResourceHandler() : wxXmlResourceHandler() {}
-    //~wxPyXmlResourceHandler();
+    ~wxPyXmlResourceHandler() {}
 
     // Base class virtuals