+wxGraphicsPath wxGraphicsContext::CreatePath() const
+{
+ return GetRenderer()->CreatePath();
+}
+
+wxGraphicsPen wxGraphicsContext::CreatePen(const wxPen& pen) const
+{
+ return GetRenderer()->CreatePen(pen);
+}
+
+wxGraphicsBrush wxGraphicsContext::CreateBrush(const wxBrush& brush ) const
+{
+ return GetRenderer()->CreateBrush(brush);
+}
+
+wxGraphicsBrush
+wxGraphicsContext::CreateLinearGradientBrush(
+ wxDouble x1, wxDouble y1,
+ wxDouble x2, wxDouble y2,
+ const wxColour& c1, const wxColour& c2) const
+{
+ return GetRenderer()->CreateLinearGradientBrush
+ (
+ x1, y1,
+ x2, y2,
+ wxGraphicsGradientStops(c1,c2)
+ );
+}
+
+wxGraphicsBrush
+wxGraphicsContext::CreateLinearGradientBrush(
+ wxDouble x1, wxDouble y1,
+ wxDouble x2, wxDouble y2,
+ const wxGraphicsGradientStops& gradientStops) const
+{
+ return GetRenderer()->CreateLinearGradientBrush(x1,y1,x2,y2, gradientStops);
+}
+
+wxGraphicsBrush
+wxGraphicsContext::CreateRadialGradientBrush(
+ wxDouble xo, wxDouble yo,
+ wxDouble xc, wxDouble yc, wxDouble radius,
+ const wxColour &oColor, const wxColour &cColor) const
+{
+ return GetRenderer()->CreateRadialGradientBrush
+ (
+ xo, yo,
+ xc, yc, radius,
+ wxGraphicsGradientStops(oColor, cColor)
+ );
+}
+
+wxGraphicsBrush
+wxGraphicsContext::CreateRadialGradientBrush(
+ wxDouble xo, wxDouble yo,
+ wxDouble xc, wxDouble yc, wxDouble radius,
+ const wxGraphicsGradientStops& gradientStops) const
+{
+ return GetRenderer()->CreateRadialGradientBrush
+ (
+ xo, yo,
+ xc, yc, radius,
+ gradientStops
+ );
+}
+
+// sets the font
+wxGraphicsFont wxGraphicsContext::CreateFont( const wxFont &font , const wxColour &col ) const
+{
+ return GetRenderer()->CreateFont(font,col);
+}
+
+wxGraphicsBitmap wxGraphicsContext::CreateBitmap( const wxBitmap& bmp ) const
+{
+ return GetRenderer()->CreateBitmap(bmp);
+}
+
+wxGraphicsBitmap wxGraphicsContext::CreateSubBitmap( const wxGraphicsBitmap &bmp, wxDouble x, wxDouble y, wxDouble w, wxDouble h ) const
+{
+ return GetRenderer()->CreateSubBitmap(bmp,x,y,w,h);
+}
+
+/* static */ wxGraphicsContext* wxGraphicsContext::Create( const wxWindowDC& dc)
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
+}
+
+/* static */ wxGraphicsContext* wxGraphicsContext::Create( const wxMemoryDC& dc)
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
+}
+
+#if wxUSE_PRINTING_ARCHITECTURE
+/* static */ wxGraphicsContext* wxGraphicsContext::Create( const wxPrinterDC& dc)
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
+}
+
+#ifdef __WXMSW__
+/* static */ wxGraphicsContext* wxGraphicsContext::Create( const wxEnhMetaFileDC& dc)
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
+}
+#endif
+
+#endif // wxUSE_PRINTING_ARCHITECTURE
+
+wxGraphicsContext* wxGraphicsContext::CreateFromNative( void * context )
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContextFromNativeContext(context);
+}
+
+wxGraphicsContext* wxGraphicsContext::CreateFromNativeWindow( void * window )
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContextFromNativeWindow(window);
+}
+
+wxGraphicsContext* wxGraphicsContext::Create( wxWindow* window )
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(window);
+}
+
+wxGraphicsContext* wxGraphicsContext::Create()
+{
+ return wxGraphicsRenderer::GetDefaultRenderer()->CreateMeasuringContext();
+}
+
+//-----------------------------------------------------------------------------
+// wxGraphicsRenderer
+//-----------------------------------------------------------------------------
+
+IMPLEMENT_ABSTRACT_CLASS(wxGraphicsRenderer, wxObject)
+