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

#include "sipAPI_dataview.h"

        #include <wx/dataview.h>

        #include <wx/dataview.h>
        #include <wx/bitmap.h>
        #include <wx/dataview.h>


class sipwxDataViewColumn : public  ::wxDataViewColumn
{
public:
    sipwxDataViewColumn(const  ::wxString&, ::wxDataViewRenderer*,uint,int, ::wxAlignment,int);
    sipwxDataViewColumn(const  ::wxBitmap&, ::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;
     ::wxBitmap GetBitmap() const SIP_OVERRIDE;
     ::wxString GetTitle() const SIP_OVERRIDE;
    void SetTitle(const  ::wxString&) SIP_OVERRIDE;
    void SetBitmap(const  ::wxBitmap&) 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[23];
};

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  ::wxBitmap& 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]),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]),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]),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]),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]),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]),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]),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]),sipPySelf,SIP_NULLPTR,sipName_GetAlignment);

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

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

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

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

    sipMeth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[8]),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]),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);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    extern void sipVH__dataview_38(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const  ::wxBitmap&);

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


PyDoc_STRVAR(doc_wxDataViewColumn_GetModelColumn, "GetModelColumn() -> unsignedint\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);
        }
    }

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetRenderer, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_SetTitle, doc_wxDataViewColumn_SetTitle);

    return SIP_NULLPTR;
}


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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_DataViewColumn, sipName_GetTitle, doc_wxDataViewColumn_GetTitle);

    return SIP_NULLPTR;
}


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

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  ::wxBitmap* bitmap;
         ::wxDataViewColumn *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxDataViewColumn, &sipCpp, sipType_wxBitmap, &bitmap))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp-> ::wxDataViewColumn::SetBitmap(*bitmap) : sipCpp->SetBitmap(*bitmap));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    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_wxSettableHeaderColumn)
        return static_cast< ::wxSettableHeaderColumn *>(sipCpp);

    if (targetType == sipType_wxHeaderColumn)
        return static_cast< ::wxHeaderColumn *>(sipCpp);

    return sipCppV;
}


/* 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 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;
        PyObject *rendererWrapper;
        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, "J1@J8u|iEi", sipType_wxString,&title, &titleState, &rendererWrapper, 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

            sipTransferTo(rendererWrapper, (PyObject *)sipSelf);
            sipReleaseType(const_cast< ::wxString *>(title),sipType_wxString,titleState);

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        const  ::wxBitmap* bitmap;
         ::wxDataViewRenderer* renderer;
        PyObject *rendererWrapper;
        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, "J9@J8u|iEi", sipType_wxBitmap, &bitmap, &rendererWrapper, 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

            sipTransferTo(rendererWrapper, (PyObject *)sipSelf);

            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[] = {{28, 0, 1}};


static PyMethodDef methods_wxDataViewColumn[] = {
    {SIP_MLNAME_CAST(sipName_GetAlignment), meth_wxDataViewColumn_GetAlignment, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetAlignment)},
    {SIP_MLNAME_CAST(sipName_GetBitmap), meth_wxDataViewColumn_GetBitmap, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetBitmap)},
    {SIP_MLNAME_CAST(sipName_GetFlags), meth_wxDataViewColumn_GetFlags, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetFlags)},
    {SIP_MLNAME_CAST(sipName_GetMinWidth), meth_wxDataViewColumn_GetMinWidth, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetMinWidth)},
    {SIP_MLNAME_CAST(sipName_GetModelColumn), meth_wxDataViewColumn_GetModelColumn, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetModelColumn)},
    {SIP_MLNAME_CAST(sipName_GetOwner), meth_wxDataViewColumn_GetOwner, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetOwner)},
    {SIP_MLNAME_CAST(sipName_GetRenderer), meth_wxDataViewColumn_GetRenderer, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetRenderer)},
    {SIP_MLNAME_CAST(sipName_GetTitle), meth_wxDataViewColumn_GetTitle, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetTitle)},
    {SIP_MLNAME_CAST(sipName_GetWidth), meth_wxDataViewColumn_GetWidth, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_GetWidth)},
    {SIP_MLNAME_CAST(sipName_IsSortKey), meth_wxDataViewColumn_IsSortKey, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_IsSortKey)},
    {SIP_MLNAME_CAST(sipName_IsSortOrderAscending), meth_wxDataViewColumn_IsSortOrderAscending, METH_VARARGS, SIP_MLDOC_CAST(doc_wxDataViewColumn_IsSortOrderAscending)},
    {SIP_MLNAME_CAST(sipName_SetAlignment), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetAlignment), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetAlignment)},
    {SIP_MLNAME_CAST(sipName_SetBitmap), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetBitmap), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetBitmap)},
    {SIP_MLNAME_CAST(sipName_SetFlags), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetFlags), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetFlags)},
    {SIP_MLNAME_CAST(sipName_SetHidden), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetHidden), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetHidden)},
    {SIP_MLNAME_CAST(sipName_SetMinWidth), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetMinWidth), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetMinWidth)},
    {SIP_MLNAME_CAST(sipName_SetReorderable), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetReorderable), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetReorderable)},
    {SIP_MLNAME_CAST(sipName_SetResizeable), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetResizeable), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetResizeable)},
    {SIP_MLNAME_CAST(sipName_SetSortOrder), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetSortOrder), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetSortOrder)},
    {SIP_MLNAME_CAST(sipName_SetSortable), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetSortable), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetSortable)},
    {SIP_MLNAME_CAST(sipName_SetTitle), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetTitle), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxDataViewColumn_SetTitle)},
    {SIP_MLNAME_CAST(sipName_SetWidth), SIP_MLMETH_CAST(meth_wxDataViewColumn_SetWidth), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(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)\n"
"DataViewColumn(bitmap, renderer, model_column, width=DVC_DEFAULT_WIDTH, align=wx.ALIGN_CENTER, flags=DATAVIEW_COL_RESIZABLE)\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,
#if PY_MAJOR_VERSION >= 3
    SIP_NULLPTR,
    SIP_NULLPTR,
#else
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
#endif
    dealloc_wxDataViewColumn,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxDataViewColumn,
    cast_wxDataViewColumn,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR
};
