/*
 * 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/gdicmn.h>
        #include <wx/brush.h>
        #include <wx/pen.h>
        #include <wx/font.h>
        #include <wx/font.h>
        #include <wx/pen.h>
        #include "arrayholder.h"
        #include <wx/cursor.h>
        #include <wx/colour.h>
        #include <wx/brush.h>


class sipwxStockGDI : public ::wxStockGDI
{
public:
    sipwxStockGDI();
    ~sipwxStockGDI();

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipwxStockGDI(const sipwxStockGDI &);
    sipwxStockGDI &operator = (const sipwxStockGDI &);
};

sipwxStockGDI::sipwxStockGDI(): ::wxStockGDI(), sipPySelf(SIP_NULLPTR)
{
}

sipwxStockGDI::~sipwxStockGDI()
{
    sipInstanceDestroyedEx(&sipPySelf);
}


PyDoc_STRVAR(doc_wxStockGDI_DeleteAll, "DeleteAll()");

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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            ::wxStockGDI::DeleteAll();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_DeleteAll, doc_wxStockGDI_DeleteAll);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_instance, "instance() -> StockGDI");

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

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = &::wxStockGDI::instance();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_instance, doc_wxStockGDI_instance);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_GetBrush, "GetBrush(item: StockGDI.Item) -> Brush|None");

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

    {
        ::wxStockGDI::Item item;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "E", sipType_wxStockGDI_Item, &item))
        {
            const ::wxBrush*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxStockGDI::GetBrush(item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(const_cast< ::wxBrush *>(sipRes), sipType_wxBrush, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetBrush, doc_wxStockGDI_GetBrush);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_GetColour, "GetColour(item: StockGDI.Item) -> Colour|None");

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

    {
        ::wxStockGDI::Item item;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "E", sipType_wxStockGDI_Item, &item))
        {
            const ::wxColour*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxStockGDI::GetColour(item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(const_cast< ::wxColour *>(sipRes), sipType_wxColour, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetColour, doc_wxStockGDI_GetColour);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_GetCursor, "GetCursor(item: StockGDI.Item) -> Cursor|None");

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

    {
        ::wxStockGDI::Item item;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "E", sipType_wxStockGDI_Item, &item))
        {
            const ::wxCursor*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxStockGDI::GetCursor(item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(const_cast< ::wxCursor *>(sipRes), sipType_wxCursor, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetCursor, doc_wxStockGDI_GetCursor);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_GetPen, "GetPen(item: StockGDI.Item) -> Pen|None");

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

    {
        ::wxStockGDI::Item item;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "E", sipType_wxStockGDI_Item, &item))
        {
            const ::wxPen*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = ::wxStockGDI::GetPen(item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(const_cast< ::wxPen *>(sipRes), sipType_wxPen, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetPen, doc_wxStockGDI_GetPen);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI_GetFont, "GetFont(self, item: StockGDI.Item) -> Font|None");

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

    {
        ::wxStockGDI::Item item;
        ::wxStockGDI *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxStockGDI, &sipCpp, sipType_wxStockGDI_Item, &item))
        {
            const ::wxFont*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetFont(item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromType(const_cast< ::wxFont *>(sipRes), sipType_wxFont, SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetFont, doc_wxStockGDI_GetFont);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI__getTheFontList, "_getTheFontList() -> FontList|None");

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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxFontList*sipRes = 0;
        sipRes = wxTheFontList;

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

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getTheFontList, doc_wxStockGDI__getTheFontList);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI__getThePenList, "_getThePenList() -> PenList|None");

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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxPenList*sipRes = 0;
        sipRes = wxThePenList;

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

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getThePenList, doc_wxStockGDI__getThePenList);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI__getTheBrushList, "_getTheBrushList() -> BrushList|None");

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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxBrushList*sipRes = 0;
        sipRes = wxTheBrushList;

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

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getTheBrushList, doc_wxStockGDI__getTheBrushList);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxStockGDI__getTheColourDatabase, "_getTheColourDatabase() -> ColourDatabase|None");

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

    {
        if (sipParseArgs(&sipParseErr, sipArgs, ""))
        {
            ::wxColourDatabase*sipRes = 0;
        sipRes = wxTheColourDatabase;

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

    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getTheColourDatabase, doc_wxStockGDI__getTheColourDatabase);

    return SIP_NULLPTR;
}


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

    if (sipState & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipwxStockGDI *>(sipCppV);
    else
        delete reinterpret_cast< ::wxStockGDI *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void dealloc_wxStockGDI(sipSimpleWrapper *);}
static void dealloc_wxStockGDI(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerivedClass(sipSelf))
        reinterpret_cast<sipwxStockGDI *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;

    if (sipIsOwnedByPython(sipSelf))
    {
        release_wxStockGDI(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
    }
}


extern "C" {static void *init_type_wxStockGDI(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_wxStockGDI(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
    sipwxStockGDI *sipCpp = SIP_NULLPTR;

    {
        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, ""))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxStockGDI();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
            {
                delete sipCpp;
                return SIP_NULLPTR;
            }

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


static PyMethodDef methods_wxStockGDI[] = {
    {sipName_DeleteAll, meth_wxStockGDI_DeleteAll, METH_VARARGS, doc_wxStockGDI_DeleteAll},
    {sipName_GetBrush, SIP_MLMETH_CAST(meth_wxStockGDI_GetBrush), METH_VARARGS|METH_KEYWORDS, doc_wxStockGDI_GetBrush},
    {sipName_GetColour, SIP_MLMETH_CAST(meth_wxStockGDI_GetColour), METH_VARARGS|METH_KEYWORDS, doc_wxStockGDI_GetColour},
    {sipName_GetCursor, SIP_MLMETH_CAST(meth_wxStockGDI_GetCursor), METH_VARARGS|METH_KEYWORDS, doc_wxStockGDI_GetCursor},
    {sipName_GetFont, SIP_MLMETH_CAST(meth_wxStockGDI_GetFont), METH_VARARGS|METH_KEYWORDS, doc_wxStockGDI_GetFont},
    {sipName_GetPen, SIP_MLMETH_CAST(meth_wxStockGDI_GetPen), METH_VARARGS|METH_KEYWORDS, doc_wxStockGDI_GetPen},
    {sipName__getTheBrushList, meth_wxStockGDI__getTheBrushList, METH_VARARGS, doc_wxStockGDI__getTheBrushList},
    {sipName__getTheColourDatabase, meth_wxStockGDI__getTheColourDatabase, METH_VARARGS, doc_wxStockGDI__getTheColourDatabase},
    {sipName__getTheFontList, meth_wxStockGDI__getTheFontList, METH_VARARGS, doc_wxStockGDI__getTheFontList},
    {sipName__getThePenList, meth_wxStockGDI__getThePenList, METH_VARARGS, doc_wxStockGDI__getThePenList},
    {sipName_instance, meth_wxStockGDI_instance, METH_VARARGS, doc_wxStockGDI_instance}
};

static sipEnumMemberDef enummembers_wxStockGDI[] = {
    {sipName_BRUSH_BLACK, static_cast<int>(::wxStockGDI::BRUSH_BLACK), 545},
    {sipName_BRUSH_BLUE, static_cast<int>(::wxStockGDI::BRUSH_BLUE), 545},
    {sipName_BRUSH_CYAN, static_cast<int>(::wxStockGDI::BRUSH_CYAN), 545},
    {sipName_BRUSH_GREEN, static_cast<int>(::wxStockGDI::BRUSH_GREEN), 545},
    {sipName_BRUSH_GREY, static_cast<int>(::wxStockGDI::BRUSH_GREY), 545},
    {sipName_BRUSH_LIGHTGREY, static_cast<int>(::wxStockGDI::BRUSH_LIGHTGREY), 545},
    {sipName_BRUSH_MEDIUMGREY, static_cast<int>(::wxStockGDI::BRUSH_MEDIUMGREY), 545},
    {sipName_BRUSH_RED, static_cast<int>(::wxStockGDI::BRUSH_RED), 545},
    {sipName_BRUSH_TRANSPARENT, static_cast<int>(::wxStockGDI::BRUSH_TRANSPARENT), 545},
    {sipName_BRUSH_WHITE, static_cast<int>(::wxStockGDI::BRUSH_WHITE), 545},
    {sipName_BRUSH_YELLOW, static_cast<int>(::wxStockGDI::BRUSH_YELLOW), 545},
    {sipName_COLOUR_BLACK, static_cast<int>(::wxStockGDI::COLOUR_BLACK), 545},
    {sipName_COLOUR_BLUE, static_cast<int>(::wxStockGDI::COLOUR_BLUE), 545},
    {sipName_COLOUR_CYAN, static_cast<int>(::wxStockGDI::COLOUR_CYAN), 545},
    {sipName_COLOUR_GREEN, static_cast<int>(::wxStockGDI::COLOUR_GREEN), 545},
    {sipName_COLOUR_LIGHTGREY, static_cast<int>(::wxStockGDI::COLOUR_LIGHTGREY), 545},
    {sipName_COLOUR_RED, static_cast<int>(::wxStockGDI::COLOUR_RED), 545},
    {sipName_COLOUR_WHITE, static_cast<int>(::wxStockGDI::COLOUR_WHITE), 545},
    {sipName_COLOUR_YELLOW, static_cast<int>(::wxStockGDI::COLOUR_YELLOW), 545},
    {sipName_CURSOR_CROSS, static_cast<int>(::wxStockGDI::CURSOR_CROSS), 545},
    {sipName_CURSOR_HOURGLASS, static_cast<int>(::wxStockGDI::CURSOR_HOURGLASS), 545},
    {sipName_CURSOR_STANDARD, static_cast<int>(::wxStockGDI::CURSOR_STANDARD), 545},
    {sipName_FONT_ITALIC, static_cast<int>(::wxStockGDI::FONT_ITALIC), 545},
    {sipName_FONT_NORMAL, static_cast<int>(::wxStockGDI::FONT_NORMAL), 545},
    {sipName_FONT_SMALL, static_cast<int>(::wxStockGDI::FONT_SMALL), 545},
    {sipName_FONT_SWISS, static_cast<int>(::wxStockGDI::FONT_SWISS), 545},
    {sipName_PEN_BLACK, static_cast<int>(::wxStockGDI::PEN_BLACK), 545},
    {sipName_PEN_BLACKDASHED, static_cast<int>(::wxStockGDI::PEN_BLACKDASHED), 545},
    {sipName_PEN_BLUE, static_cast<int>(::wxStockGDI::PEN_BLUE), 545},
    {sipName_PEN_CYAN, static_cast<int>(::wxStockGDI::PEN_CYAN), 545},
    {sipName_PEN_GREEN, static_cast<int>(::wxStockGDI::PEN_GREEN), 545},
    {sipName_PEN_GREY, static_cast<int>(::wxStockGDI::PEN_GREY), 545},
    {sipName_PEN_LIGHTGREY, static_cast<int>(::wxStockGDI::PEN_LIGHTGREY), 545},
    {sipName_PEN_MEDIUMGREY, static_cast<int>(::wxStockGDI::PEN_MEDIUMGREY), 545},
    {sipName_PEN_RED, static_cast<int>(::wxStockGDI::PEN_RED), 545},
    {sipName_PEN_TRANSPARENT, static_cast<int>(::wxStockGDI::PEN_TRANSPARENT), 545},
    {sipName_PEN_WHITE, static_cast<int>(::wxStockGDI::PEN_WHITE), 545},
    {sipName_PEN_YELLOW, static_cast<int>(::wxStockGDI::PEN_YELLOW), 545},
};

PyDoc_STRVAR(doc_wxStockGDI, "\1StockGDI()");


sipClassTypeDef sipTypeDef__core_wxStockGDI = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_CLASS,
        sipNameNr_wxStockGDI,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_StockGDI,
        {0, 0, 1},
        11, methods_wxStockGDI,
        38, enummembers_wxStockGDI,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxStockGDI,
    -1,
    -1,
    SIP_NULLPTR,
    SIP_NULLPTR,
    init_type_wxStockGDI,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxStockGDI,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxStockGDI,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::wxStockGDI),
};
