/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.15.1
 *
 *     Copyright: (c) 2020 by Total Control Software
 *     License:   wxWindows License
 */

#include "sipAPI_core.h"
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/graphics.h>
        #include <wx/font.h>
        #include <wx/gdicmn.h>
        #include <wx/colour.h>
        #include <wx/graphics.h>
        #include <wx/brush.h>
        #include <wx/image.h>
        #include <wx/dc.h>
        #include <wx/window.h>
        #include <wx/dcclient.h>
        #include <wx/dcmemory.h>
        #include <wx/dcprint.h>
        #include <wx/bitmap.h>
        #include <wx/object.h>
        #include <wx/object.h>
        #include <wx/object.h>
    wxGraphicsRenderer* _wxGraphicsRenderer_GetGDIPlusRenderer()
    {
        #ifdef __WXMSW__
            return wxGraphicsRenderer::GetGDIPlusRenderer();
        #else
            return NULL;
        #endif
    }
    wxGraphicsRenderer* _wxGraphicsRenderer_GetDirect2DRenderer()
    {
        #if wxUSE_GRAPHICS_DIRECT2D
            return wxGraphicsRenderer::GetDirect2DRenderer();
        #else
            return NULL;
        #endif
    }


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateBitmap, "CreateBitmap(bitmap) -> GraphicsBitmap\n"
"\n"
"Creates wxGraphicsBitmap from an existing wxBitmap.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateBitmap(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateBitmap(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxBitmap* bitmap;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_bitmap,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxBitmap, &bitmap))
        {
            ::wxGraphicsBitmap*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBitmap(sipCpp->CreateBitmap(*bitmap));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBitmap, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateBitmap, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateBitmapFromImage, "CreateBitmapFromImage(image) -> GraphicsBitmap\n"
"\n"
"Creates wxGraphicsBitmap from an existing wxImage.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateBitmapFromImage(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateBitmapFromImage(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxImage* image;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_image,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxImage, &image))
        {
            ::wxGraphicsBitmap*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBitmap(sipCpp->CreateBitmapFromImage(*image));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBitmap, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateBitmapFromImage, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateImageFromBitmap, "CreateImageFromBitmap(bmp) -> Image\n"
"\n"
"Creates a wxImage from a wxGraphicsBitmap.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateImageFromBitmap(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateImageFromBitmap(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxGraphicsBitmap* bmp;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_bmp,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxGraphicsBitmap, &bmp))
        {
            ::wxImage*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxImage(sipCpp->CreateImageFromBitmap(*bmp));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxImage, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateImageFromBitmap, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateBitmapFromNativeBitmap, "CreateBitmapFromNativeBitmap(bitmap) -> GraphicsBitmap\n"
"\n"
"Creates wxGraphicsBitmap from a native bitmap handle.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateBitmapFromNativeBitmap(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateBitmapFromNativeBitmap(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        void* bitmap;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_bitmap,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bv", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &bitmap))
        {
            ::wxGraphicsBitmap*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBitmap(sipCpp->CreateBitmapFromNativeBitmap(bitmap));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBitmap, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateBitmapFromNativeBitmap, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateContext, "CreateContext(window) -> GraphicsContext\n"
"CreateContext(windowDC) -> GraphicsContext\n"
"CreateContext(memoryDC) -> GraphicsContext\n"
"CreateContext(printerDC) -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext from a wxWindow.\n"
"\n"
"\n"
"");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateContext(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateContext(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxWindow* window;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_window,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxWindow, &window))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContext(window);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    {
        const ::wxWindowDC* windowDC;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_windowDC,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxWindowDC, &windowDC))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContext(*windowDC);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    {
        const ::wxMemoryDC* memoryDC;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_memoryDC,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxMemoryDC, &memoryDC))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContext(*memoryDC);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    {
        const ::wxPrinterDC* printerDC;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_printerDC,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxPrinterDC, &printerDC))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContext(*printerDC);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateContext, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateContextFromUnknownDC, "CreateContextFromUnknownDC(dc) -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext from a DC of unknown specific type.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateContextFromUnknownDC(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateContextFromUnknownDC(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxDC* dc;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_dc,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxDC, &dc))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContextFromUnknownDC(*dc);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateContextFromUnknownDC, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateContextFromImage, "CreateContextFromImage(image) -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext associated with a wxImage.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateContextFromImage(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateContextFromImage(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxImage* image;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_image,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxImage, &image))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContextFromImage(*image);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateContextFromImage, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateBrush, "CreateBrush(brush) -> GraphicsBrush\n"
"\n"
"Creates a native brush from a wxBrush.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateBrush(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateBrush(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxBrush* brush;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_brush,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxBrush, &brush))
        {
            ::wxGraphicsBrush*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBrush(sipCpp->CreateBrush(*brush));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBrush, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateBrush, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateContextFromNativeContext, "CreateContextFromNativeContext(context) -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext from a native context.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateContextFromNativeContext(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateContextFromNativeContext(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        void* context;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_context,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bv", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &context))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContextFromNativeContext(context);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateContextFromNativeContext, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateContextFromNativeWindow, "CreateContextFromNativeWindow(window) -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext from a native window.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateContextFromNativeWindow(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateContextFromNativeWindow(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        void* window;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_window,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bv", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &window))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateContextFromNativeWindow(window);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateContextFromNativeWindow, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateMeasuringContext, "CreateMeasuringContext() -> GraphicsContext\n"
"\n"
"Creates a wxGraphicsContext that can be used for measuring texts only.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateMeasuringContext(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateMeasuringContext(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxGraphicsRenderer *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp))
        {
            ::wxGraphicsContext*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->CreateMeasuringContext();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsContext, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateMeasuringContext, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateFont, "CreateFont(font, col=BLACK) -> GraphicsFont\n"
"CreateFont(sizeInPixels, facename, flags=FONTFLAG_DEFAULT, col=BLACK) -> GraphicsFont\n"
"\n"
"Creates a native graphics font from a wxFont and a text colour.\n"
"");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateFont(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateFont(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxFont* font;
        const ::wxColour& coldef = *wxBLACK;
        const ::wxColour* col = &coldef;
        int colState = 0;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_font,
            sipName_col,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|J1", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxFont, &font, sipType_wxColour, &col, &colState))
        {
            ::wxGraphicsFont*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsFont(sipCpp->CreateFont(*font, *col));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxColour *>(col), sipType_wxColour, colState);

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsFont, SIP_NULLPTR);
        }
    }

    {
        double sizeInPixels;
        const ::wxString* facename;
        int facenameState = 0;
        int flags = wxFONTFLAG_DEFAULT;
        const ::wxColour& coldef = *wxBLACK;
        const ::wxColour* col = &coldef;
        int colState = 0;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_sizeInPixels,
            sipName_facename,
            sipName_flags,
            sipName_col,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BdJ1|iJ1", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &sizeInPixels, sipType_wxString, &facename, &facenameState, &flags, sipType_wxColour, &col, &colState))
        {
            ::wxGraphicsFont*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsFont(sipCpp->CreateFont(sizeInPixels, *facename, flags, *col));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(facename), sipType_wxString, facenameState);
            sipReleaseType(const_cast< ::wxColour *>(col), sipType_wxColour, colState);

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsFont, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateFont, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateFontAtDPI, "CreateFontAtDPI(font, dpi, col=BLACK) -> GraphicsFont\n"
"\n"
"Creates a native graphics font from a wxFont and a text colour.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateFontAtDPI(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateFontAtDPI(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxFont* font;
        const ::wxRealPoint* dpi;
        int dpiState = 0;
        const ::wxColour& coldef = *wxBLACK;
        const ::wxColour* col = &coldef;
        int colState = 0;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_font,
            sipName_dpi,
            sipName_col,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1|J1", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxFont, &font, sipType_wxRealPoint, &dpi, &dpiState, sipType_wxColour, &col, &colState))
        {
            ::wxGraphicsFont*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsFont(sipCpp->CreateFontAtDPI(*font, *dpi, *col));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRealPoint *>(dpi), sipType_wxRealPoint, dpiState);
            sipReleaseType(const_cast< ::wxColour *>(col), sipType_wxColour, colState);

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsFont, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateFontAtDPI, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateLinearGradientBrush, "CreateLinearGradientBrush(x1, y1, x2, y2, stops, matrix=NullGraphicsMatrix) -> GraphicsBrush\n"
"\n"
"Creates a native brush with a linear gradient.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateLinearGradientBrush(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateLinearGradientBrush(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxDouble x1;
        ::wxDouble y1;
        ::wxDouble x2;
        ::wxDouble y2;
        const ::wxGraphicsGradientStops* stops;
        const ::wxGraphicsMatrix& matrixdef = wxNullGraphicsMatrix;
        const ::wxGraphicsMatrix* matrix = &matrixdef;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_x1,
            sipName_y1,
            sipName_x2,
            sipName_y2,
            sipName_stops,
            sipName_matrix,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BddddJ9|J9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &x1, &y1, &x2, &y2, sipType_wxGraphicsGradientStops, &stops, sipType_wxGraphicsMatrix, &matrix))
        {
            ::wxGraphicsBrush*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBrush(sipCpp->CreateLinearGradientBrush(x1, y1, x2, y2, *stops, *matrix));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBrush, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateLinearGradientBrush, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateMatrix, "CreateMatrix(a=1.0, b=0.0, c=0.0, d=1.0, tx=0.0, ty=0.0) -> GraphicsMatrix\n"
"\n"
"Creates a native affine transformation matrix from the passed in\n"
"values.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateMatrix(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateMatrix(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxDouble a = 1;
        ::wxDouble b = 0;
        ::wxDouble c = 0;
        ::wxDouble d = 1;
        ::wxDouble tx = 0;
        ::wxDouble ty = 0;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_a,
            sipName_b,
            sipName_c,
            sipName_d,
            sipName_tx,
            sipName_ty,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|dddddd", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &a, &b, &c, &d, &tx, &ty))
        {
            ::wxGraphicsMatrix*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsMatrix(sipCpp->CreateMatrix(a, b, c, d, tx, ty));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsMatrix, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateMatrix, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreatePath, "CreatePath() -> GraphicsPath\n"
"\n"
"Creates a native graphics path which is initially empty.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreatePath(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreatePath(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxGraphicsRenderer *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp))
        {
            ::wxGraphicsPath*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsPath(sipCpp->CreatePath());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsPath, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreatePath, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreatePen, "CreatePen(info) -> GraphicsPen\n"
"\n"
"Creates a native pen from its description.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreatePen(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreatePen(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxGraphicsPenInfo* info;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_info,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxGraphicsPenInfo, &info))
        {
            ::wxGraphicsPen*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsPen(sipCpp->CreatePen(*info));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsPen, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreatePen, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateRadialGradientBrush, "CreateRadialGradientBrush(startX, startY, endX, endY, radius, stops, matrix=NullGraphicsMatrix) -> GraphicsBrush\n"
"\n"
"Creates a native brush with a radial gradient.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateRadialGradientBrush(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateRadialGradientBrush(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        ::wxDouble startX;
        ::wxDouble startY;
        ::wxDouble endX;
        ::wxDouble endY;
        ::wxDouble radius;
        const ::wxGraphicsGradientStops* stops;
        const ::wxGraphicsMatrix& matrixdef = wxNullGraphicsMatrix;
        const ::wxGraphicsMatrix* matrix = &matrixdef;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_startX,
            sipName_startY,
            sipName_endX,
            sipName_endY,
            sipName_radius,
            sipName_stops,
            sipName_matrix,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BdddddJ9|J9", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, &startX, &startY, &endX, &endY, &radius, sipType_wxGraphicsGradientStops, &stops, sipType_wxGraphicsMatrix, &matrix))
        {
            ::wxGraphicsBrush*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBrush(sipCpp->CreateRadialGradientBrush(startX, startY, endX, endY, radius, *stops, *matrix));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBrush, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateRadialGradientBrush, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_CreateSubBitmap, "CreateSubBitmap(bitmap, x, y, w, h) -> GraphicsBitmap\n"
"\n"
"Extracts a sub-bitmap from an existing bitmap.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_CreateSubBitmap(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_CreateSubBitmap(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxGraphicsBitmap* bitmap;
        ::wxDouble x;
        ::wxDouble y;
        ::wxDouble w;
        ::wxDouble h;
        ::wxGraphicsRenderer *sipCpp;

        static const char *sipKwdList[] = {
            sipName_bitmap,
            sipName_x,
            sipName_y,
            sipName_w,
            sipName_h,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9dddd", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp, sipType_wxGraphicsBitmap, &bitmap, &x, &y, &w, &h))
        {
            ::wxGraphicsBitmap*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxGraphicsBitmap(sipCpp->CreateSubBitmap(*bitmap, x, y, w, h));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxGraphicsBitmap, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_CreateSubBitmap, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetName, "GetName() -> str\n"
"\n"
"Returns the name of the technology used by the renderer.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetName(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetName(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const ::wxGraphicsRenderer *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp))
        {
            ::wxString*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxString(sipCpp->GetName());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromNewType(sipRes, sipType_wxString, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetName, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetVersion, "GetVersion(major, minor=None, micro=None) -> None\n"
"\n"
"Returns the version major, minor and micro/build of the technology\n"
"used by the renderer.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetVersion(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetVersion(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        int major;
        int minor;
        int micro;
        const ::wxGraphicsRenderer *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxGraphicsRenderer, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->GetVersion(&major, &minor, &micro);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipBuildResult(0, "(iii)", major, minor, micro);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetVersion, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetDefaultRenderer, "GetDefaultRenderer() -> GraphicsRenderer\n"
"\n"
"Returns the default renderer on this platform.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetDefaultRenderer(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetDefaultRenderer(PyObject *, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxGraphicsRenderer*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxGraphicsRenderer::GetDefaultRenderer();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(sipRes, sipType_wxGraphicsRenderer, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetDefaultRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetCairoRenderer, "GetCairoRenderer() -> GraphicsRenderer\n"
"\n"
"Returns Cairo renderer.");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetCairoRenderer(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetCairoRenderer(PyObject *, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxGraphicsRenderer*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxGraphicsRenderer::GetCairoRenderer();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(sipRes, sipType_wxGraphicsRenderer, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetCairoRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetGDIPlusRenderer, "GetGDIPlusRenderer() -> GraphicsRenderer\n"
"\n"
"Returns GDI+ renderer (MSW only).");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetGDIPlusRenderer(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetGDIPlusRenderer(PyObject *, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxGraphicsRenderer*sipRes = 0;
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxGraphicsRenderer_GetGDIPlusRenderer();
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

            return sipConvertFromType(sipRes, sipType_wxGraphicsRenderer, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetGDIPlusRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxGraphicsRenderer_GetDirect2DRenderer, "GetDirect2DRenderer() -> GraphicsRenderer\n"
"\n"
"Returns Direct2D renderer (MSW and Python3 only).");

extern "C" {static PyObject *meth_wxGraphicsRenderer_GetDirect2DRenderer(PyObject *, PyObject *);}
static PyObject *meth_wxGraphicsRenderer_GetDirect2DRenderer(PyObject *, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxGraphicsRenderer*sipRes = 0;
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxGraphicsRenderer_GetDirect2DRenderer();
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

            return sipConvertFromType(sipRes, sipType_wxGraphicsRenderer, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_GraphicsRenderer, sipName_GetDirect2DRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


/* Cast a pointer to a type somewhere in its inheritance hierarchy. */
extern "C" {static void *cast_wxGraphicsRenderer(void *, const sipTypeDef *);}
static void *cast_wxGraphicsRenderer(void *sipCppV, const sipTypeDef *targetType)
{
    ::wxGraphicsRenderer *sipCpp = reinterpret_cast< ::wxGraphicsRenderer *>(sipCppV);

    if (targetType == sipType_wxGraphicsRenderer)
        return sipCppV;

    if (targetType == sipType_wxObject)
        return static_cast< ::wxObject *>(sipCpp);

    return SIP_NULLPTR;
}


/* Call the instance's destructor. */
extern "C" {static void release_wxGraphicsRenderer(void *, int);}
static void release_wxGraphicsRenderer(void *sipCppV, int)
{
    Py_BEGIN_ALLOW_THREADS

    delete reinterpret_cast< ::wxGraphicsRenderer *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_wxGraphicsRenderer(sipSimpleWrapper *);}
static void dealloc_wxGraphicsRenderer(sipSimpleWrapper *sipSelf)
{
    if (sipIsOwnedByPython(sipSelf))
    {
        release_wxGraphicsRenderer(sipGetAddress(sipSelf), 0);
    }
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_wxGraphicsRenderer[] = {{392, 255, 1}};


static PyMethodDef methods_wxGraphicsRenderer[] = {
    {sipName_CreateBitmap, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateBitmap), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateBitmap},
    {sipName_CreateBitmapFromImage, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateBitmapFromImage), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateBitmapFromImage},
    {sipName_CreateBitmapFromNativeBitmap, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateBitmapFromNativeBitmap), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateBitmapFromNativeBitmap},
    {sipName_CreateBrush, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateBrush), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateBrush},
    {sipName_CreateContext, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateContext), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateContext},
    {sipName_CreateContextFromImage, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateContextFromImage), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateContextFromImage},
    {sipName_CreateContextFromNativeContext, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateContextFromNativeContext), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateContextFromNativeContext},
    {sipName_CreateContextFromNativeWindow, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateContextFromNativeWindow), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateContextFromNativeWindow},
    {sipName_CreateContextFromUnknownDC, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateContextFromUnknownDC), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateContextFromUnknownDC},
    {sipName_CreateFont, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateFont), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateFont},
    {sipName_CreateFontAtDPI, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateFontAtDPI), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateFontAtDPI},
    {sipName_CreateImageFromBitmap, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateImageFromBitmap), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateImageFromBitmap},
    {sipName_CreateLinearGradientBrush, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateLinearGradientBrush), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateLinearGradientBrush},
    {sipName_CreateMatrix, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateMatrix), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateMatrix},
    {sipName_CreateMeasuringContext, meth_wxGraphicsRenderer_CreateMeasuringContext, METH_VARARGS, doc_wxGraphicsRenderer_CreateMeasuringContext},
    {sipName_CreatePath, meth_wxGraphicsRenderer_CreatePath, METH_VARARGS, doc_wxGraphicsRenderer_CreatePath},
    {sipName_CreatePen, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreatePen), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreatePen},
    {sipName_CreateRadialGradientBrush, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateRadialGradientBrush), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateRadialGradientBrush},
    {sipName_CreateSubBitmap, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_CreateSubBitmap), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_CreateSubBitmap},
    {sipName_GetCairoRenderer, meth_wxGraphicsRenderer_GetCairoRenderer, METH_VARARGS, doc_wxGraphicsRenderer_GetCairoRenderer},
    {sipName_GetDefaultRenderer, meth_wxGraphicsRenderer_GetDefaultRenderer, METH_VARARGS, doc_wxGraphicsRenderer_GetDefaultRenderer},
    {sipName_GetDirect2DRenderer, meth_wxGraphicsRenderer_GetDirect2DRenderer, METH_VARARGS, doc_wxGraphicsRenderer_GetDirect2DRenderer},
    {sipName_GetGDIPlusRenderer, meth_wxGraphicsRenderer_GetGDIPlusRenderer, METH_VARARGS, doc_wxGraphicsRenderer_GetGDIPlusRenderer},
    {sipName_GetName, meth_wxGraphicsRenderer_GetName, METH_VARARGS, doc_wxGraphicsRenderer_GetName},
    {sipName_GetVersion, SIP_MLMETH_CAST(meth_wxGraphicsRenderer_GetVersion), METH_VARARGS|METH_KEYWORDS, doc_wxGraphicsRenderer_GetVersion}
};

sipVariableDef variables_wxGraphicsRenderer[] = {
    {PropertyVariable, sipName_Name, &methods_wxGraphicsRenderer[23], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxGraphicsRenderer, "A wxGraphicsRenderer is the instance corresponding to the rendering\n"
"engine used.");


sipClassTypeDef sipTypeDef__core_wxGraphicsRenderer = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_ABSTRACT|SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_wxGraphicsRenderer,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_GraphicsRenderer,
        {0, 0, 1},
        25, methods_wxGraphicsRenderer,
        0, SIP_NULLPTR,
        1, variables_wxGraphicsRenderer,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxGraphicsRenderer,
    -1,
    -1,
    supers_wxGraphicsRenderer,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxGraphicsRenderer,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxGraphicsRenderer,
    cast_wxGraphicsRenderer,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    0,
};
