/*
 * Interface wrapper code.
 *
 * Generated by SIP 4.19.16
 *
 *     Copyright: (c) 2018 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;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_instance, doc_wxStockGDI_instance);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetBrush, doc_wxStockGDI_GetBrush);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetColour, doc_wxStockGDI_GetColour);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetCursor, doc_wxStockGDI_GetCursor);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetPen, doc_wxStockGDI_GetPen);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName_GetFont, doc_wxStockGDI_GetFont);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getTheFontList, doc_wxStockGDI__getTheFontList);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getThePenList, doc_wxStockGDI__getThePenList);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_StockGDI, sipName__getTheBrushList, doc_wxStockGDI__getTheBrushList);

    return SIP_NULLPTR;
}


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

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);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    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[] = {
    {SIP_MLNAME_CAST(sipName_DeleteAll), meth_wxStockGDI_DeleteAll, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI_DeleteAll)},
    {SIP_MLNAME_CAST(sipName_GetBrush), SIP_MLMETH_CAST(meth_wxStockGDI_GetBrush), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxStockGDI_GetBrush)},
    {SIP_MLNAME_CAST(sipName_GetColour), SIP_MLMETH_CAST(meth_wxStockGDI_GetColour), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxStockGDI_GetColour)},
    {SIP_MLNAME_CAST(sipName_GetCursor), SIP_MLMETH_CAST(meth_wxStockGDI_GetCursor), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxStockGDI_GetCursor)},
    {SIP_MLNAME_CAST(sipName_GetFont), SIP_MLMETH_CAST(meth_wxStockGDI_GetFont), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxStockGDI_GetFont)},
    {SIP_MLNAME_CAST(sipName_GetPen), SIP_MLMETH_CAST(meth_wxStockGDI_GetPen), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxStockGDI_GetPen)},
    {SIP_MLNAME_CAST(sipName__getTheBrushList), meth_wxStockGDI__getTheBrushList, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI__getTheBrushList)},
    {SIP_MLNAME_CAST(sipName__getTheColourDatabase), meth_wxStockGDI__getTheColourDatabase, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI__getTheColourDatabase)},
    {SIP_MLNAME_CAST(sipName__getTheFontList), meth_wxStockGDI__getTheFontList, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI__getTheFontList)},
    {SIP_MLNAME_CAST(sipName__getThePenList), meth_wxStockGDI__getThePenList, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI__getThePenList)},
    {SIP_MLNAME_CAST(sipName_instance), meth_wxStockGDI_instance, METH_VARARGS, SIP_MLDOC_CAST(doc_wxStockGDI_instance)}
};

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

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,
#if PY_MAJOR_VERSION >= 3
    SIP_NULLPTR,
    SIP_NULLPTR,
#else
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
#endif
    dealloc_wxStockGDI,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxStockGDI,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR
};
