/*
 * 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/renderer.h>
        #include <wx/renderer.h>
        #include <wx/window.h>
        #include <wx/dc.h>
        #include <wx/gdicmn.h>
        #include <wx/renderer.h>
        #include <wx/renderer.h>
        #include <wx/gdicmn.h>
        #include <wx/renderer.h>
    void _wxDelegateRendererNative_DrawTitleBarBitmap(wxDelegateRendererNative* self, wxWindow* win, wxDC* dc, const wxRect* rect, wxTitleBarButton button, int flags)
    {
        #ifdef wxHAS_DRAW_TITLE_BAR_BITMAP
            self->DrawTitleBarBitmap(win, *dc, *rect, button, flags);
        #else
            wxPyRaiseNotImplemented();
        #endif
    }


class sipwxDelegateRendererNative : public ::wxDelegateRendererNative
{
public:
    sipwxDelegateRendererNative();
    sipwxDelegateRendererNative(::wxRendererNative&);
    virtual ~sipwxDelegateRendererNative();

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void DrawCheckBox(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawComboBoxDropButton(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawDropArrow(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawFocusRect(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawGauge(::wxWindow*, ::wxDC&, const ::wxRect&, int, int, int) SIP_OVERRIDE;
    int DrawHeaderButton(::wxWindow*, ::wxDC&, const ::wxRect&, int, ::wxHeaderSortIconType, ::wxHeaderButtonParams*) SIP_OVERRIDE;
    int DrawHeaderButtonContents(::wxWindow*, ::wxDC&, const ::wxRect&, int, ::wxHeaderSortIconType, ::wxHeaderButtonParams*) SIP_OVERRIDE;
    void DrawItemSelectionRect(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawItemText(::wxWindow*, ::wxDC&, const ::wxString&, const ::wxRect&, int, int, ::wxEllipsizeMode) SIP_OVERRIDE;
    void DrawPushButton(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawCollapseButton(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    ::wxSize GetCollapseButtonSize(::wxWindow*, ::wxDC&) SIP_OVERRIDE;
    void DrawSplitterBorder(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawSplitterSash(::wxWindow*, ::wxDC&, const ::wxSize&, ::wxCoord, ::wxOrientation, int) SIP_OVERRIDE;
    void DrawTreeItemButton(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawChoice(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawComboBox(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawTextCtrl(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawRadioBitmap(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    void DrawCheckMark(::wxWindow*, ::wxDC&, const ::wxRect&, int) SIP_OVERRIDE;
    ::wxSize GetCheckBoxSize(::wxWindow*, int) SIP_OVERRIDE;
    ::wxSize GetCheckMarkSize(::wxWindow*) SIP_OVERRIDE;
    ::wxSize GetExpanderSize(::wxWindow*) SIP_OVERRIDE;
    int GetHeaderButtonHeight(::wxWindow*) SIP_OVERRIDE;
    int GetHeaderButtonMargin(::wxWindow*) SIP_OVERRIDE;
    ::wxSplitterRenderParams GetSplitterParams(const ::wxWindow*) SIP_OVERRIDE;
    ::wxRendererVersion GetVersion() const SIP_OVERRIDE;

public:
    sipSimpleWrapper *sipPySelf;

private:
    sipwxDelegateRendererNative(const sipwxDelegateRendererNative &);
    sipwxDelegateRendererNative &operator = (const sipwxDelegateRendererNative &);

    char sipPyMethods[27];
};

sipwxDelegateRendererNative::sipwxDelegateRendererNative(): ::wxDelegateRendererNative(), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipwxDelegateRendererNative::sipwxDelegateRendererNative(::wxRendererNative& rendererNative): ::wxDelegateRendererNative(rendererNative), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

void sipwxDelegateRendererNative::DrawCheckBox(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[0], &sipPySelf, SIP_NULLPTR, sipName_DrawCheckBox);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawCheckBox(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawComboBoxDropButton(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[1], &sipPySelf, SIP_NULLPTR, sipName_DrawComboBoxDropButton);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawComboBoxDropButton(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawDropArrow(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[2], &sipPySelf, SIP_NULLPTR, sipName_DrawDropArrow);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawDropArrow(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawFocusRect(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[3], &sipPySelf, SIP_NULLPTR, sipName_DrawFocusRect);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawFocusRect(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawGauge(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int value, int max, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[4], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawGauge);

    if (!sipMeth)
        return;

    extern void sipVH__core_33(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int, int, int);

    sipVH__core_33(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, value, max, flags);
}

int sipwxDelegateRendererNative::DrawHeaderButton(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags, ::wxHeaderSortIconType sortArrow, ::wxHeaderButtonParams*params)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[5], &sipPySelf, SIP_NULLPTR, sipName_DrawHeaderButton);

    if (!sipMeth)
        return ::wxDelegateRendererNative::DrawHeaderButton(win, dc, rect, flags, sortArrow, params);

    extern int sipVH__core_34(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int, ::wxHeaderSortIconType, ::wxHeaderButtonParams*);

    return sipVH__core_34(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags, sortArrow, params);
}

int sipwxDelegateRendererNative::DrawHeaderButtonContents(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags, ::wxHeaderSortIconType sortArrow, ::wxHeaderButtonParams*params)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[6], &sipPySelf, SIP_NULLPTR, sipName_DrawHeaderButtonContents);

    if (!sipMeth)
        return ::wxDelegateRendererNative::DrawHeaderButtonContents(win, dc, rect, flags, sortArrow, params);

    extern int sipVH__core_34(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int, ::wxHeaderSortIconType, ::wxHeaderButtonParams*);

    return sipVH__core_34(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags, sortArrow, params);
}

void sipwxDelegateRendererNative::DrawItemSelectionRect(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[7], &sipPySelf, SIP_NULLPTR, sipName_DrawItemSelectionRect);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawItemSelectionRect(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawItemText(::wxWindow*win, ::wxDC& dc, const ::wxString& text, const ::wxRect& rect, int align, int flags, ::wxEllipsizeMode ellipsizeMode)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[8], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawItemText);

    if (!sipMeth)
        return;

    extern void sipVH__core_35(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxString&, const ::wxRect&, int, int, ::wxEllipsizeMode);

    sipVH__core_35(sipGILState, 0, sipPySelf, sipMeth, win, dc, text, rect, align, flags, ellipsizeMode);
}

void sipwxDelegateRendererNative::DrawPushButton(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[9], &sipPySelf, SIP_NULLPTR, sipName_DrawPushButton);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawPushButton(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawCollapseButton(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[10], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawCollapseButton);

    if (!sipMeth)
        return;

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

::wxSize sipwxDelegateRendererNative::GetCollapseButtonSize(::wxWindow*win, ::wxDC& dc)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[11], &sipPySelf, sipName_DelegateRendererNative, sipName_GetCollapseButtonSize);

    if (!sipMeth)
        return ::wxSize();

    extern ::wxSize sipVH__core_36(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&);

    return sipVH__core_36(sipGILState, 0, sipPySelf, sipMeth, win, dc);
}

void sipwxDelegateRendererNative::DrawSplitterBorder(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[12], &sipPySelf, SIP_NULLPTR, sipName_DrawSplitterBorder);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawSplitterBorder(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawSplitterSash(::wxWindow*win, ::wxDC& dc, const ::wxSize& size, ::wxCoord position, ::wxOrientation orient, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[13], &sipPySelf, SIP_NULLPTR, sipName_DrawSplitterSash);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawSplitterSash(win, dc, size, position, orient, flags);
        return;
    }

    extern void sipVH__core_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxSize&, ::wxCoord, ::wxOrientation, int);

    sipVH__core_37(sipGILState, 0, sipPySelf, sipMeth, win, dc, size, position, orient, flags);
}

void sipwxDelegateRendererNative::DrawTreeItemButton(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[14], &sipPySelf, SIP_NULLPTR, sipName_DrawTreeItemButton);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawTreeItemButton(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawChoice(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[15], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawChoice);

    if (!sipMeth)
        return;

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawComboBox(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[16], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawComboBox);

    if (!sipMeth)
        return;

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawTextCtrl(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[17], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawTextCtrl);

    if (!sipMeth)
        return;

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawRadioBitmap(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[18], &sipPySelf, sipName_DelegateRendererNative, sipName_DrawRadioBitmap);

    if (!sipMeth)
        return;

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

void sipwxDelegateRendererNative::DrawCheckMark(::wxWindow*win, ::wxDC& dc, const ::wxRect& rect, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[19], &sipPySelf, SIP_NULLPTR, sipName_DrawCheckMark);

    if (!sipMeth)
    {
        ::wxDelegateRendererNative::DrawCheckMark(win, dc, rect, flags);
        return;
    }

    extern void sipVH__core_32(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, ::wxDC&, const ::wxRect&, int);

    sipVH__core_32(sipGILState, 0, sipPySelf, sipMeth, win, dc, rect, flags);
}

::wxSize sipwxDelegateRendererNative::GetCheckBoxSize(::wxWindow*win, int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[20], &sipPySelf, SIP_NULLPTR, sipName_GetCheckBoxSize);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetCheckBoxSize(win, flags);

    extern ::wxSize sipVH__core_39(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*, int);

    return sipVH__core_39(sipGILState, 0, sipPySelf, sipMeth, win, flags);
}

::wxSize sipwxDelegateRendererNative::GetCheckMarkSize(::wxWindow*win)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[21], &sipPySelf, SIP_NULLPTR, sipName_GetCheckMarkSize);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetCheckMarkSize(win);

    extern ::wxSize sipVH__core_40(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*);

    return sipVH__core_40(sipGILState, 0, sipPySelf, sipMeth, win);
}

::wxSize sipwxDelegateRendererNative::GetExpanderSize(::wxWindow*win)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[22], &sipPySelf, SIP_NULLPTR, sipName_GetExpanderSize);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetExpanderSize(win);

    extern ::wxSize sipVH__core_40(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*);

    return sipVH__core_40(sipGILState, 0, sipPySelf, sipMeth, win);
}

int sipwxDelegateRendererNative::GetHeaderButtonHeight(::wxWindow*win)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[23], &sipPySelf, SIP_NULLPTR, sipName_GetHeaderButtonHeight);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetHeaderButtonHeight(win);

    extern int sipVH__core_41(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*);

    return sipVH__core_41(sipGILState, 0, sipPySelf, sipMeth, win);
}

int sipwxDelegateRendererNative::GetHeaderButtonMargin(::wxWindow*win)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[24], &sipPySelf, SIP_NULLPTR, sipName_GetHeaderButtonMargin);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetHeaderButtonMargin(win);

    extern int sipVH__core_41(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindow*);

    return sipVH__core_41(sipGILState, 0, sipPySelf, sipMeth, win);
}

::wxSplitterRenderParams sipwxDelegateRendererNative::GetSplitterParams(const ::wxWindow*win)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[25], &sipPySelf, SIP_NULLPTR, sipName_GetSplitterParams);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetSplitterParams(win);

    extern ::wxSplitterRenderParams sipVH__core_42(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxWindow*);

    return sipVH__core_42(sipGILState, 0, sipPySelf, sipMeth, win);
}

::wxRendererVersion sipwxDelegateRendererNative::GetVersion() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, const_cast<char *>(&sipPyMethods[26]), const_cast<sipSimpleWrapper **>(&sipPySelf), SIP_NULLPTR, sipName_GetVersion);

    if (!sipMeth)
        return ::wxDelegateRendererNative::GetVersion();

    extern ::wxRendererVersion sipVH__core_43(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH__core_43(sipGILState, 0, sipPySelf, sipMeth);
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawHeaderButton, "DrawHeaderButton(win, dc, rect, flags=0, sortArrow=HDR_SORT_ICON_NONE, params=None) -> int\n"
"\n"
"Draw the header control button (used, for example, by wxListCtrl).");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawHeaderButton(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawHeaderButton(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE;
        ::wxHeaderButtonParams* params = 0;
        ::wxDelegateRendererNative *sipCpp;

        static const char *sipKwdList[] = {
            sipName_win,
            sipName_dc,
            sipName_rect,
            sipName_flags,
            sipName_sortArrow,
            sipName_params,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|iEJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags, sipType_wxHeaderSortIconType, &sortArrow, sipType_wxHeaderButtonParams, &params))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawHeaderButton(win, *dc, *rect, flags, sortArrow, params) : sipCpp->DrawHeaderButton(win, *dc, *rect, flags, sortArrow, params));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawHeaderButton, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawHeaderButtonContents, "DrawHeaderButtonContents(win, dc, rect, flags=0, sortArrow=HDR_SORT_ICON_NONE, params=None) -> int\n"
"\n"
"Draw the contents of a header control button (label, sort arrows,\n"
"etc.).");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawHeaderButtonContents(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawHeaderButtonContents(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE;
        ::wxHeaderButtonParams* params = 0;
        ::wxDelegateRendererNative *sipCpp;

        static const char *sipKwdList[] = {
            sipName_win,
            sipName_dc,
            sipName_rect,
            sipName_flags,
            sipName_sortArrow,
            sipName_params,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|iEJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags, sipType_wxHeaderSortIconType, &sortArrow, sipType_wxHeaderButtonParams, &params))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawHeaderButtonContents(win, *dc, *rect, flags, sortArrow, params) : sipCpp->DrawHeaderButtonContents(win, *dc, *rect, flags, sortArrow, params));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawHeaderButtonContents, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetHeaderButtonHeight, "GetHeaderButtonHeight(win) -> int\n"
"\n"
"Returns the height of a header button, either a fixed platform height\n"
"if available, or a generic height based on the win window's font.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetHeaderButtonHeight(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetHeaderButtonHeight(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetHeaderButtonHeight(win) : sipCpp->GetHeaderButtonHeight(win));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetHeaderButtonHeight, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetHeaderButtonMargin, "GetHeaderButtonMargin(win) -> int\n"
"\n"
"Returns the horizontal margin on the left and right sides of header\n"
"button's label.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetHeaderButtonMargin(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetHeaderButtonMargin(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetHeaderButtonMargin(win) : sipCpp->GetHeaderButtonMargin(win));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetHeaderButtonMargin, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawTreeItemButton, "DrawTreeItemButton(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw the expanded/collapsed icon for a tree control item.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawTreeItemButton(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawTreeItemButton(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawTreeItemButton(win, *dc, *rect, flags) : sipCpp->DrawTreeItemButton(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawTreeItemButton, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawSplitterBorder, "DrawSplitterBorder(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw the border for sash window: this border must be such that the\n"
"sash drawn by DrawSplitterSash() blends into it well.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawSplitterBorder(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawSplitterBorder(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawSplitterBorder(win, *dc, *rect, flags) : sipCpp->DrawSplitterBorder(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawSplitterBorder, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawSplitterSash, "DrawSplitterSash(win, dc, size, position, orient, flags=0) -> None\n"
"\n"
"Draw a sash.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawSplitterSash(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawSplitterSash(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxSize* size;
        int sizeState = 0;
        ::wxCoord position;
        ::wxOrientation orient;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

        static const char *sipKwdList[] = {
            sipName_win,
            sipName_dc,
            sipName_size,
            sipName_position,
            sipName_orient,
            sipName_flags,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1iE|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxSize, &size, &sizeState, &position, sipType_wxOrientation, &orient, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawSplitterSash(win, *dc, *size, position, orient, flags) : sipCpp->DrawSplitterSash(win, *dc, *size, position, orient, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxSize *>(size), sipType_wxSize, sizeState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawSplitterSash, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawComboBoxDropButton, "DrawComboBoxDropButton(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a button like the one used by wxComboBox to show a drop down\n"
"window.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawComboBoxDropButton(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawComboBoxDropButton(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawComboBoxDropButton(win, *dc, *rect, flags) : sipCpp->DrawComboBoxDropButton(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawComboBoxDropButton, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawDropArrow, "DrawDropArrow(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a drop down arrow that is suitable for use outside a combo box.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawDropArrow(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawDropArrow(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawDropArrow(win, *dc, *rect, flags) : sipCpp->DrawDropArrow(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawDropArrow, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawCheckBox, "DrawCheckBox(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a check box.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawCheckBox(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawCheckBox(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawCheckBox(win, *dc, *rect, flags) : sipCpp->DrawCheckBox(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawCheckBox, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawCheckMark, "DrawCheckMark(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a check mark.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawCheckMark(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawCheckMark(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawCheckMark(win, *dc, *rect, flags) : sipCpp->DrawCheckMark(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawCheckMark, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetCheckBoxSize, "GetCheckBoxSize(win, flags=0) -> Size\n"
"\n"
"Returns the size of a check box.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetCheckBoxSize(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetCheckBoxSize(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, &flags))
        {
            ::wxSize*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSize((sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetCheckBoxSize(win, flags) : sipCpp->GetCheckBoxSize(win, flags)));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetCheckBoxSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetCheckMarkSize, "GetCheckMarkSize(win) -> Size\n"
"\n"
"Returns the size of a check mark.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetCheckMarkSize(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetCheckMarkSize(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win))
        {
            ::wxSize*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSize((sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetCheckMarkSize(win) : sipCpp->GetCheckMarkSize(win)));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetCheckMarkSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetExpanderSize, "GetExpanderSize(win) -> Size\n"
"\n"
"Returns the size of the expander used in tree-like controls.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetExpanderSize(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetExpanderSize(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win))
        {
            ::wxSize*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSize((sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetExpanderSize(win) : sipCpp->GetExpanderSize(win)));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetExpanderSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawPushButton, "DrawPushButton(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a blank push button that looks very similar to wxButton.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawPushButton(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawPushButton(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawPushButton(win, *dc, *rect, flags) : sipCpp->DrawPushButton(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawPushButton, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawItemSelectionRect, "DrawItemSelectionRect(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a selection rectangle underneath the text as used e.g.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawItemSelectionRect(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawItemSelectionRect(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawItemSelectionRect(win, *dc, *rect, flags) : sipCpp->DrawItemSelectionRect(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawItemSelectionRect, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_DrawFocusRect, "DrawFocusRect(win, dc, rect, flags=0) -> None\n"
"\n"
"Draw a focus rectangle using the specified rectangle.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawFocusRect(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawFocusRect(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        ::wxWindow* win;
        ::wxDC* dc;
        const ::wxRect* rect;
        int rectState = 0;
        int flags = 0;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8J9J1|i", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win, sipType_wxDC, &dc, sipType_wxRect, &rect, &rectState, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::DrawFocusRect(win, *dc, *rect, flags) : sipCpp->DrawFocusRect(win, *dc, *rect, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxRect *>(rect), sipType_wxRect, rectState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_DrawFocusRect, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetSplitterParams, "GetSplitterParams(win) -> SplitterRenderParams\n"
"\n"
"Get the splitter parameters, see wxSplitterRenderParams.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetSplitterParams(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetSplitterParams(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        const ::wxWindow* win;
        ::wxDelegateRendererNative *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxDelegateRendererNative, &sipCpp, sipType_wxWindow, &win))
        {
            ::wxSplitterRenderParams*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSplitterRenderParams((sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetSplitterParams(win) : sipCpp->GetSplitterParams(win)));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetSplitterParams, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDelegateRendererNative_GetVersion, "GetVersion() -> RendererVersion\n"
"\n"
"This function is used for version checking: Load() refuses to load any\n"
"shared libraries implementing an older or incompatible version.");

extern "C" {static PyObject *meth_wxDelegateRendererNative_GetVersion(PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_GetVersion(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;
    bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));

    {
        const ::wxDelegateRendererNative *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxRendererVersion((sipSelfWasArg ? sipCpp->::wxDelegateRendererNative::GetVersion() : sipCpp->GetVersion()));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DelegateRendererNative, sipName_GetVersion, SIP_NULLPTR);

    return SIP_NULLPTR;
}


extern "C" {static PyObject *meth_wxDelegateRendererNative_DrawTitleBarBitmap(PyObject *, PyObject *);}
static PyObject *meth_wxDelegateRendererNative_DrawTitleBarBitmap(PyObject *, PyObject *)
{

    sipNoMethod(SIP_NULLPTR, sipName_DelegateRendererNative, sipName_DrawTitleBarBitmap, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_wxDelegateRendererNative)
        return sipCppV;

    if (targetType == sipType_wxRendererNative)
        return static_cast< ::wxRendererNative *>(sipCpp);

    return SIP_NULLPTR;
}


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

    if (sipState & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipwxDelegateRendererNative *>(sipCppV);
    else
        delete reinterpret_cast< ::wxDelegateRendererNative *>(sipCppV);

    Py_END_ALLOW_THREADS
}


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

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


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

    {
        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, ""))
        {
        if (!wxPyCheckForApp()) return NULL;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxDelegateRendererNative();
            Py_END_ALLOW_THREADS

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        ::wxRendererNative* rendererNative;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "J9", sipType_wxRendererNative, &rendererNative))
        {
        if (!wxPyCheckForApp()) return NULL;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxDelegateRendererNative(*rendererNative);
            Py_END_ALLOW_THREADS

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


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


static PyMethodDef methods_wxDelegateRendererNative[] = {
    {sipName_DrawCheckBox, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawCheckBox), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawCheckBox},
    {sipName_DrawCheckMark, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawCheckMark), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawCheckMark},
    {sipName_DrawComboBoxDropButton, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawComboBoxDropButton), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawComboBoxDropButton},
    {sipName_DrawDropArrow, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawDropArrow), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawDropArrow},
    {sipName_DrawFocusRect, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawFocusRect), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawFocusRect},
    {sipName_DrawHeaderButton, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawHeaderButton), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawHeaderButton},
    {sipName_DrawHeaderButtonContents, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawHeaderButtonContents), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawHeaderButtonContents},
    {sipName_DrawItemSelectionRect, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawItemSelectionRect), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawItemSelectionRect},
    {sipName_DrawPushButton, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawPushButton), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawPushButton},
    {sipName_DrawSplitterBorder, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawSplitterBorder), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawSplitterBorder},
    {sipName_DrawSplitterSash, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawSplitterSash), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawSplitterSash},
    {sipName_DrawTitleBarBitmap, meth_wxDelegateRendererNative_DrawTitleBarBitmap, METH_VARARGS, SIP_NULLPTR},
    {sipName_DrawTreeItemButton, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_DrawTreeItemButton), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_DrawTreeItemButton},
    {sipName_GetCheckBoxSize, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetCheckBoxSize), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetCheckBoxSize},
    {sipName_GetCheckMarkSize, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetCheckMarkSize), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetCheckMarkSize},
    {sipName_GetExpanderSize, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetExpanderSize), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetExpanderSize},
    {sipName_GetHeaderButtonHeight, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetHeaderButtonHeight), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetHeaderButtonHeight},
    {sipName_GetHeaderButtonMargin, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetHeaderButtonMargin), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetHeaderButtonMargin},
    {sipName_GetSplitterParams, SIP_MLMETH_CAST(meth_wxDelegateRendererNative_GetSplitterParams), METH_VARARGS|METH_KEYWORDS, doc_wxDelegateRendererNative_GetSplitterParams},
    {sipName_GetVersion, meth_wxDelegateRendererNative_GetVersion, METH_VARARGS, doc_wxDelegateRendererNative_GetVersion}
};

sipVariableDef variables_wxDelegateRendererNative[] = {
    {PropertyVariable, sipName_Version, &methods_wxDelegateRendererNative[19], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxDelegateRendererNative, "DelegateRendererNative() -> None\n"
"DelegateRendererNative(rendererNative) -> None\n"
"\n"
"wxDelegateRendererNative allows reuse of renderers code by forwarding\n"
"all the wxRendererNative methods to the given object and thus allowing\n"
"you to only modify some of its methods  without having to reimplement\n"
"all of them.");


sipClassTypeDef sipTypeDef__core_wxDelegateRendererNative = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_ABSTRACT|SIP_TYPE_CLASS,
        sipNameNr_wxDelegateRendererNative,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_DelegateRendererNative,
        {0, 0, 1},
        20, methods_wxDelegateRendererNative,
        0, SIP_NULLPTR,
        1, variables_wxDelegateRendererNative,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxDelegateRendererNative,
    -1,
    -1,
    supers_wxDelegateRendererNative,
    SIP_NULLPTR,
    init_type_wxDelegateRendererNative,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxDelegateRendererNative,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxDelegateRendererNative,
    cast_wxDelegateRendererNative,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::wxDelegateRendererNative),
};
