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

#include "sipAPI_dataview.h"
        #include <wx/dataview.h>
        #include <wx/dataview.h>
        #include <wx/bmpbndl.h>
        #include <wx/bitmap.h>
        #include <wx/dataview.h>


class sipwxDataViewColumn : public ::wxDataViewColumn
{
public:
    sipwxDataViewColumn(const ::wxString&, ::wxDataViewRenderer*, uint, int, ::wxAlignment, int);
    sipwxDataViewColumn(const ::wxBitmapBundle&, ::wxDataViewRenderer*, uint, int, ::wxAlignment, int);
    sipwxDataViewColumn(const ::wxDataViewColumn&);
    virtual ~sipwxDataViewColumn();

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    bool IsSortOrderAscending() const SIP_OVERRIDE;
    bool IsSortKey() const SIP_OVERRIDE;
    bool IsHidden() const SIP_OVERRIDE;
    bool IsReorderable() const SIP_OVERRIDE;
    bool IsSortable() const SIP_OVERRIDE;
    bool IsResizeable() const SIP_OVERRIDE;
    int GetFlags() const SIP_OVERRIDE;
    ::wxAlignment GetAlignment() const SIP_OVERRIDE;
    int GetMinWidth() const SIP_OVERRIDE;
    int GetWidth() const SIP_OVERRIDE;
    ::wxBitmapBundle GetBitmapBundle() const SIP_OVERRIDE;
    ::wxBitmap GetBitmap() const SIP_OVERRIDE;
    ::wxString GetTitle() const SIP_OVERRIDE;
    void SetTitle(const ::wxString&) SIP_OVERRIDE;
    void SetBitmap(const ::wxBitmapBundle&) SIP_OVERRIDE;
    void SetWidth(int) SIP_OVERRIDE;
    void SetMinWidth(int) SIP_OVERRIDE;
    void SetAlignment(::wxAlignment) SIP_OVERRIDE;
    void SetFlags(int) SIP_OVERRIDE;
    void SetResizeable(bool) SIP_OVERRIDE;
    void SetSortable(bool) SIP_OVERRIDE;
    void SetReorderable(bool) SIP_OVERRIDE;
    void SetHidden(bool) SIP_OVERRIDE;
    void SetSortOrder(bool) SIP_OVERRIDE;

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[24];
};

sipwxDataViewColumn::sipwxDataViewColumn(const ::wxString& title, ::wxDataViewRenderer*renderer, uint model_column, int width, ::wxAlignment align, int flags): ::wxDataViewColumn(title, renderer, model_column, width, align, flags), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipwxDataViewColumn::sipwxDataViewColumn(const ::wxBitmapBundle& bitmap, ::wxDataViewRenderer*renderer, uint model_column, int width, ::wxAlignment align, int flags): ::wxDataViewColumn(bitmap, renderer, model_column, width, align, flags), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipwxDataViewColumn::sipwxDataViewColumn(const ::wxDataViewColumn& a0): ::wxDataViewColumn(a0), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

bool sipwxDataViewColumn::IsSortOrderAscending() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsSortOrderAscending();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxDataViewColumn::IsSortKey() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsSortKey();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxDataViewColumn::IsHidden() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsHidden();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxDataViewColumn::IsReorderable() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsReorderable();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxDataViewColumn::IsSortable() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsSortable();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxDataViewColumn::IsResizeable() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::IsResizeable();

    extern bool sipVH__dataview_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

int sipwxDataViewColumn::GetFlags() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetFlags();

    extern int sipVH__dataview_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

::wxAlignment sipwxDataViewColumn::GetAlignment() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetAlignment();

    extern ::wxAlignment sipVH__dataview_44(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

int sipwxDataViewColumn::GetMinWidth() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetMinWidth();

    extern int sipVH__dataview_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

int sipwxDataViewColumn::GetWidth() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetWidth();

    extern int sipVH__dataview_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

::wxBitmapBundle sipwxDataViewColumn::GetBitmapBundle() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetBitmapBundle();

    extern ::wxBitmapBundle sipVH__dataview_43(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

::wxBitmap sipwxDataViewColumn::GetBitmap() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetBitmap();

    extern ::wxBitmap sipVH__dataview_42(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

::wxString sipwxDataViewColumn::GetTitle() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxDataViewColumn::GetTitle();

    extern ::wxString sipVH__dataview_41(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

void sipwxDataViewColumn::SetTitle(const ::wxString& title)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetTitle(title);
        return;
    }

    extern void sipVH__dataview_40(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxString&);

    sipVH__dataview_40(sipGILState, 0, sipPySelf, sipMeth, title);
}

void sipwxDataViewColumn::SetBitmap(const ::wxBitmapBundle& bitmap)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetBitmap(bitmap);
        return;
    }

    extern void sipVH__dataview_39(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxBitmapBundle&);

    sipVH__dataview_39(sipGILState, 0, sipPySelf, sipMeth, bitmap);
}

void sipwxDataViewColumn::SetWidth(int width)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[15], &sipPySelf, SIP_NULLPTR, sipName_SetWidth);

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetWidth(width);
        return;
    }

    extern void sipVH__dataview_24(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int);

    sipVH__dataview_24(sipGILState, 0, sipPySelf, sipMeth, width);
}

void sipwxDataViewColumn::SetMinWidth(int minWidth)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[16], &sipPySelf, SIP_NULLPTR, sipName_SetMinWidth);

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetMinWidth(minWidth);
        return;
    }

    extern void sipVH__dataview_24(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int);

    sipVH__dataview_24(sipGILState, 0, sipPySelf, sipMeth, minWidth);
}

void sipwxDataViewColumn::SetAlignment(::wxAlignment align)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[17], &sipPySelf, SIP_NULLPTR, sipName_SetAlignment);

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetAlignment(align);
        return;
    }

    extern void sipVH__dataview_38(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxAlignment);

    sipVH__dataview_38(sipGILState, 0, sipPySelf, sipMeth, align);
}

void sipwxDataViewColumn::SetFlags(int flags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[18], &sipPySelf, SIP_NULLPTR, sipName_SetFlags);

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetFlags(flags);
        return;
    }

    extern void sipVH__dataview_24(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int);

    sipVH__dataview_24(sipGILState, 0, sipPySelf, sipMeth, flags);
}

void sipwxDataViewColumn::SetResizeable(bool resizable)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetResizeable(resizable);
        return;
    }

    extern void sipVH__dataview_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, bool);

    sipVH__dataview_37(sipGILState, 0, sipPySelf, sipMeth, resizable);
}

void sipwxDataViewColumn::SetSortable(bool sortable)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetSortable(sortable);
        return;
    }

    extern void sipVH__dataview_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, bool);

    sipVH__dataview_37(sipGILState, 0, sipPySelf, sipMeth, sortable);
}

void sipwxDataViewColumn::SetReorderable(bool reorderable)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetReorderable(reorderable);
        return;
    }

    extern void sipVH__dataview_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, bool);

    sipVH__dataview_37(sipGILState, 0, sipPySelf, sipMeth, reorderable);
}

void sipwxDataViewColumn::SetHidden(bool hidden)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetHidden(hidden);
        return;
    }

    extern void sipVH__dataview_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, bool);

    sipVH__dataview_37(sipGILState, 0, sipPySelf, sipMeth, hidden);
}

void sipwxDataViewColumn::SetSortOrder(bool ascending)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxDataViewColumn::SetSortOrder(ascending);
        return;
    }

    extern void sipVH__dataview_37(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, bool);

    sipVH__dataview_37(sipGILState, 0, sipPySelf, sipMeth, ascending);
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetModelColumn, "GetModelColumn() -> int\n"
"\n"
"Returns the index of the column of the model, which this\n"
"wxDataViewColumn is displaying.");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            uint sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetModelColumn();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetModelColumn, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetOwner, "GetOwner() -> DataViewCtrl\n"
"\n"
"Returns the owning wxDataViewCtrl.");

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

    {
        const ::wxDataViewColumn *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetOwner();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetOwner, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetRenderer, "GetRenderer() -> DataViewRenderer\n"
"\n"
"Returns the renderer of this wxDataViewColumn.");

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

    {
        const ::wxDataViewColumn *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetRenderer();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetTitle, "SetTitle(self, title: Any)");

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

    {
        const ::wxString* title;
        int titleState = 0;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxDataViewColumn, &sipCpp, sipType_wxString, &title, &titleState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetTitle(*title) : sipCpp->SetTitle(*title));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(title), sipType_wxString, titleState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetTitle, doc_wxDataViewColumn_SetTitle);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetTitle, "GetTitle(self) -> Any");

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

    {
        const ::wxDataViewColumn *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxString((sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetTitle() : sipCpp->GetTitle()));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetTitle, doc_wxDataViewColumn_GetTitle);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetBitmap, "SetBitmap(self, bitmap: BitmapBundle)");

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

    {
        const ::wxBitmapBundle* bitmap;
        int bitmapState = 0;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxDataViewColumn, &sipCpp, sipType_wxBitmapBundle, &bitmap, &bitmapState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetBitmap(*bitmap) : sipCpp->SetBitmap(*bitmap));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxBitmapBundle *>(bitmap), sipType_wxBitmapBundle, bitmapState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetBitmap, doc_wxDataViewColumn_SetBitmap);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetBitmap, "GetBitmap(self) -> Bitmap");

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

    {
        const ::wxDataViewColumn *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxBitmap((sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetBitmap() : sipCpp->GetBitmap()));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetBitmap, doc_wxDataViewColumn_GetBitmap);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetWidth, "SetWidth(self, width: int)");

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

    {
        int width;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &width))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetWidth(width) : sipCpp->SetWidth(width));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetWidth, doc_wxDataViewColumn_SetWidth);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetWidth, "GetWidth(self) -> int");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetWidth() : sipCpp->GetWidth());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetWidth, doc_wxDataViewColumn_GetWidth);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetMinWidth, "SetMinWidth(self, minWidth: int)");

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

    {
        int minWidth;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &minWidth))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetMinWidth(minWidth) : sipCpp->SetMinWidth(minWidth));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetMinWidth, doc_wxDataViewColumn_SetMinWidth);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetMinWidth, "GetMinWidth(self) -> int");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetMinWidth() : sipCpp->GetMinWidth());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetMinWidth, doc_wxDataViewColumn_GetMinWidth);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetAlignment, "SetAlignment(self, align: Alignment)");

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

    {
        ::wxAlignment align;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxDataViewColumn, &sipCpp, sipType_wxAlignment, &align))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetAlignment(align) : sipCpp->SetAlignment(align));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetAlignment, doc_wxDataViewColumn_SetAlignment);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetAlignment, "GetAlignment(self) -> Alignment");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            ::wxAlignment sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetAlignment() : sipCpp->GetAlignment());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipConvertFromEnum(static_cast<int>(sipRes), sipType_wxAlignment);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetAlignment, doc_wxDataViewColumn_GetAlignment);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetFlags, "SetFlags(self, flags: int)");

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

    {
        int flags;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetFlags(flags) : sipCpp->SetFlags(flags));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetFlags, doc_wxDataViewColumn_SetFlags);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_GetFlags, "GetFlags(self) -> int");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::GetFlags() : sipCpp->GetFlags());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetFlags, doc_wxDataViewColumn_GetFlags);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_IsSortKey, "IsSortKey(self) -> bool");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::IsSortKey() : sipCpp->IsSortKey());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_IsSortKey, doc_wxDataViewColumn_IsSortKey);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetSortOrder, "SetSortOrder(self, ascending: bool)");

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

    {
        bool ascending;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &ascending))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetSortOrder(ascending) : sipCpp->SetSortOrder(ascending));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetSortOrder, doc_wxDataViewColumn_SetSortOrder);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_IsSortOrderAscending, "IsSortOrderAscending(self) -> bool");

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

    {
        const ::wxDataViewColumn *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxDataViewColumn, &sipCpp))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxDataViewColumn::IsSortOrderAscending() : sipCpp->IsSortOrderAscending());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_IsSortOrderAscending, doc_wxDataViewColumn_IsSortOrderAscending);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetResizeable, "SetResizeable(self, resizable: bool)");

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

    {
        bool resizable;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &resizable))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetResizeable(resizable) : sipCpp->SetResizeable(resizable));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetResizeable, doc_wxDataViewColumn_SetResizeable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetSortable, "SetSortable(self, sortable: bool)");

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

    {
        bool sortable;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &sortable))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetSortable(sortable) : sipCpp->SetSortable(sortable));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetSortable, doc_wxDataViewColumn_SetSortable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetReorderable, "SetReorderable(self, reorderable: bool)");

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

    {
        bool reorderable;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &reorderable))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetReorderable(reorderable) : sipCpp->SetReorderable(reorderable));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetReorderable, doc_wxDataViewColumn_SetReorderable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxDataViewColumn_SetHidden, "SetHidden(self, hidden: bool)");

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

    {
        bool hidden;
        ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxDataViewColumn, &sipCpp, &hidden))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxDataViewColumn::SetHidden(hidden) : sipCpp->SetHidden(hidden));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetHidden, doc_wxDataViewColumn_SetHidden);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_wxDataViewColumn)
        return sipCppV;

    sipCppV = ((const sipClassTypeDef *)sipType_wxSettableHeaderColumn)->ctd_cast(static_cast< ::wxSettableHeaderColumn *>(sipCpp), targetType);
    if (sipCppV)
        return sipCppV;

    return SIP_NULLPTR;
}


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

    if (sipState & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipwxDataViewColumn *>(sipCppV);
    else
        delete reinterpret_cast< ::wxDataViewColumn *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void assign_wxDataViewColumn(void *, Py_ssize_t, void *);}
static void assign_wxDataViewColumn(void *sipDst, Py_ssize_t sipDstIdx, void *sipSrc)
{
    reinterpret_cast< ::wxDataViewColumn *>(sipDst)[sipDstIdx] = *reinterpret_cast< ::wxDataViewColumn *>(sipSrc);
}


extern "C" {static void *copy_wxDataViewColumn(const void *, Py_ssize_t);}
static void *copy_wxDataViewColumn(const void *sipSrc, Py_ssize_t sipSrcIdx)
{
    return new ::wxDataViewColumn(reinterpret_cast<const ::wxDataViewColumn *>(sipSrc)[sipSrcIdx]);
}


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

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


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

    {
        const ::wxString* title;
        int titleState = 0;
        ::wxDataViewRenderer* renderer;
        uint model_column;
        int width = wxDVC_DEFAULT_WIDTH;
        ::wxAlignment align = wxALIGN_CENTER;
        int flags = wxDATAVIEW_COL_RESIZABLE;

        static const char *sipKwdList[] = {
            sipName_title,
            sipName_renderer,
            sipName_model_column,
            sipName_width,
            sipName_align,
            sipName_flags,
        };

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "#J1J:u|iEi", sipSelf, sipType_wxString, &title, &titleState, sipType_wxDataViewRenderer, &renderer, &model_column, &width, sipType_wxAlignment, &align, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxDataViewColumn(*title, renderer, model_column, width, align, flags);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(title), sipType_wxString, titleState);

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        const ::wxBitmapBundle* bitmap;
        int bitmapState = 0;
        ::wxDataViewRenderer* renderer;
        uint model_column;
        int width = wxDVC_DEFAULT_WIDTH;
        ::wxAlignment align = wxALIGN_CENTER;
        int flags = wxDATAVIEW_COL_RESIZABLE;

        static const char *sipKwdList[] = {
            sipName_bitmap,
            sipName_renderer,
            sipName_model_column,
            sipName_width,
            sipName_align,
            sipName_flags,
        };

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "#J1J:u|iEi", sipSelf, sipType_wxBitmapBundle, &bitmap, &bitmapState, sipType_wxDataViewRenderer, &renderer, &model_column, &width, sipType_wxAlignment, &align, &flags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxDataViewColumn(*bitmap, renderer, model_column, width, align, flags);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxBitmapBundle *>(bitmap), sipType_wxBitmapBundle, bitmapState);

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        const ::wxDataViewColumn* a0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, "J9", sipType_wxDataViewColumn, &a0))
        {
            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxDataViewColumn(*a0);
            Py_END_ALLOW_THREADS

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_wxDataViewColumn[] = {{30, 0, 1}};


static PyMethodDef methods_wxDataViewColumn[] = {
    {sipName_GetAlignment, meth_wxDataViewColumn_GetAlignment, METH_VARARGS, doc_wxDataViewColumn_GetAlignment},
    {sipName_GetBitmap, meth_wxDataViewColumn_GetBitmap, METH_VARARGS, doc_wxDataViewColumn_GetBitmap},
    {sipName_GetFlags, meth_wxDataViewColumn_GetFlags, METH_VARARGS, doc_wxDataViewColumn_GetFlags},
    {sipName_GetMinWidth, meth_wxDataViewColumn_GetMinWidth, METH_VARARGS, doc_wxDataViewColumn_GetMinWidth},
    {sipName_GetModelColumn, meth_wxDataViewColumn_GetModelColumn, METH_VARARGS, doc_wxDataViewColumn_GetModelColumn},
    {sipName_GetOwner, meth_wxDataViewColumn_GetOwner, METH_VARARGS, doc_wxDataViewColumn_GetOwner},
    {sipName_GetRenderer, meth_wxDataViewColumn_GetRenderer, METH_VARARGS, doc_wxDataViewColumn_GetRenderer},
    {sipName_GetTitle, meth_wxDataViewColumn_GetTitle, METH_VARARGS, doc_wxDataViewColumn_GetTitle},
    {sipName_GetWidth, meth_wxDataViewColumn_GetWidth, METH_VARARGS, doc_wxDataViewColumn_GetWidth},
    {sipName_IsSortKey, meth_wxDataViewColumn_IsSortKey, METH_VARARGS, doc_wxDataViewColumn_IsSortKey},
    {sipName_IsSortOrderAscending, meth_wxDataViewColumn_IsSortOrderAscending, METH_VARARGS, doc_wxDataViewColumn_IsSortOrderAscending},
    {sipName_SetAlignment, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetAlignment), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetAlignment},
    {sipName_SetBitmap, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetBitmap), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetBitmap},
    {sipName_SetFlags, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetFlags), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetFlags},
    {sipName_SetHidden, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetHidden), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetHidden},
    {sipName_SetMinWidth, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetMinWidth), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetMinWidth},
    {sipName_SetReorderable, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetReorderable), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetReorderable},
    {sipName_SetResizeable, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetResizeable), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetResizeable},
    {sipName_SetSortOrder, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetSortOrder), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetSortOrder},
    {sipName_SetSortable, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetSortable), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetSortable},
    {sipName_SetTitle, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetTitle), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetTitle},
    {sipName_SetWidth, SIP_MLMETH_CAST(meth_wxDataViewColumn_SetWidth), METH_VARARGS|METH_KEYWORDS, doc_wxDataViewColumn_SetWidth}
};

sipVariableDef variables_wxDataViewColumn[] = {
    {PropertyVariable, sipName_SortOrder, &methods_wxDataViewColumn[10], &methods_wxDataViewColumn[18], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Flags, &methods_wxDataViewColumn[2], &methods_wxDataViewColumn[13], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Alignment, &methods_wxDataViewColumn[0], &methods_wxDataViewColumn[11], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_MinWidth, &methods_wxDataViewColumn[3], &methods_wxDataViewColumn[15], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Width, &methods_wxDataViewColumn[8], &methods_wxDataViewColumn[21], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Bitmap, &methods_wxDataViewColumn[1], &methods_wxDataViewColumn[12], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Title, &methods_wxDataViewColumn[7], &methods_wxDataViewColumn[20], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Renderer, &methods_wxDataViewColumn[6], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Owner, &methods_wxDataViewColumn[5], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_ModelColumn, &methods_wxDataViewColumn[4], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxDataViewColumn, "DataViewColumn(title, renderer, model_column, width=DVC_DEFAULT_WIDTH, align=wx.ALIGN_CENTER, flags=DATAVIEW_COL_RESIZABLE) -> None\n"
"DataViewColumn(bitmap, renderer, model_column, width=DVC_DEFAULT_WIDTH, align=wx.ALIGN_CENTER, flags=DATAVIEW_COL_RESIZABLE) -> None\n"
"\n"
"This class represents a column in a wxDataViewCtrl.");


sipClassTypeDef sipTypeDef__dataview_wxDataViewColumn = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_CLASS,
        sipNameNr_wxDataViewColumn,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_DataViewColumn,
        {0, 0, 1},
        22, methods_wxDataViewColumn,
        0, SIP_NULLPTR,
        10, variables_wxDataViewColumn,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxDataViewColumn,
    -1,
    -1,
    supers_wxDataViewColumn,
    SIP_NULLPTR,
    init_type_wxDataViewColumn,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxDataViewColumn,
    assign_wxDataViewColumn,
    SIP_NULLPTR,
    copy_wxDataViewColumn,
    release_wxDataViewColumn,
    cast_wxDataViewColumn,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::wxDataViewColumn),
};
