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

#include "sipAPI_core.h"
        #include <wx/treectrl.h>
        #include <wx/window.h>
        #include <wx/gdicmn.h>
        #include <wx/gdicmn.h>
        #include <wx/validate.h>
        #include <wx/window.h>
        #include <wx/event.h>
        #include <wx/treebase.h>
        #include <wx/imaglist.h>
        #include <wx/colour.h>
        #include <wx/font.h>
        #include <wx/textctrl.h>
        #include <wx/dc.h>
        #include <wx/event.h>
        #include <wx/event.h>
    #include <wx/setup.h>
    #include <wxPython/wxpy_api.h>
        #include <wx/event.h>
        #include <wx/cursor.h>
        #include <wx/caret.h>
        #include <wx/layout.h>
        #include <wx/sizer.h>
        #include <wx/dnd.h>
        #include <wx/access.h>
        #include <wx/accel.h>
        #include <wx/menu.h>
        #include <wx/tooltip.h>
        #include <wx/event.h>
        #include <wx/gdicmn.h>
        #include <wx/event.h>
        #include <wx/event.h>
        #include <wx/palette.h>
        #include <wx/region.h>
        #include <wx/eventfilter.h>
        #include <wx/object.h>
        #include <wx/object.h>
        #include <wx/object.h>
        #include <wx/bmpbndl.h>
    PyObject* _wxTreeCtrl_GetBoundingRect(wxTreeCtrl* self, const wxTreeItemId* item, bool textOnly)
    {
        wxRect rect;
        if (self->GetBoundingRect(*item, rect, textOnly)) {
            wxPyThreadBlocker blocker;
            wxRect* r = new wxRect(rect);
            PyObject* val = wxPyConstructObject((void*)r, wxT("wxRect"), true);
            return val;
        }
        else
            RETURN_NONE();
    }
    PyObject* _wxTreeCtrl_GetSelections(wxTreeCtrl* self)
    {
        wxPyThreadBlocker blocker;
        PyObject*           rval = PyList_New(0);
        wxArrayTreeItemIds  array;
        size_t              num, x;
        num = self->GetSelections(array);
        for (x=0; x < num; x++) {
            wxTreeItemId *tii = new wxTreeItemId(array.Item(x));
            PyObject* item = wxPyConstructObject((void*)tii, wxT("wxTreeItemId"), true);
            PyList_Append(rval, item);
            Py_DECREF(item);
        }
        return rval;
    }


class sipwxTreeCtrl : public ::wxTreeCtrl
{
wxDECLARE_ABSTRACT_CLASS(sipwxTreeCtrl);
public:
    sipwxTreeCtrl();
    sipwxTreeCtrl(::wxWindow*, ::wxWindowID, const ::wxPoint&, const ::wxSize&, long, const ::wxValidator&, const ::wxString&);
    virtual ~sipwxTreeCtrl();

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
    void sipProtect_SendDestroyEvent();
    bool sipProtectVirt_ProcessEvent(bool, ::wxEvent&);
    void sipProtectVirt_DoEnable(bool, bool);
    void sipProtectVirt_DoGetPosition(bool, int*, int*) const;
    void sipProtectVirt_DoGetSize(bool, int*, int*) const;
    void sipProtectVirt_DoGetClientSize(bool, int*, int*) const;
    ::wxSize sipProtectVirt_DoGetBestSize(bool) const;
    ::wxSize sipProtectVirt_DoGetBestClientSize(bool) const;
    void sipProtectVirt_DoSetSize(bool, int, int, int, int, int);
    void sipProtectVirt_DoSetClientSize(bool, int, int);
    void sipProtectVirt_DoSetSizeHints(bool, int, int, int, int, int, int);
    void sipProtectVirt_DoMoveWindow(bool, int, int, int, int);
    void sipProtectVirt_DoSetWindowVariant(bool, ::wxWindowVariant);
    ::wxBorder sipProtectVirt_GetDefaultBorder(bool) const;
    ::wxBorder sipProtectVirt_GetDefaultBorderForControl(bool) const;
    void sipProtectVirt_DoFreeze(bool);
    void sipProtectVirt_DoThaw(bool);
    bool sipProtectVirt_HasTransparentBackground(bool);
    bool sipProtectVirt_TryBefore(bool, ::wxEvent&);
    bool sipProtectVirt_TryAfter(bool, ::wxEvent&);

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    int OnCompareItems(const ::wxTreeItemId&, const ::wxTreeItemId&) SIP_OVERRIDE;
    void SetImageList(::wxImageList*) SIP_OVERRIDE;
    ::wxSize DoGetBestClientSize() const SIP_OVERRIDE;
    ::wxSize DoGetBestSize() const SIP_OVERRIDE;
    void DoThaw() SIP_OVERRIDE;
    void DoFreeze() SIP_OVERRIDE;
    ::wxBorder GetDefaultBorderForControl() const SIP_OVERRIDE;
    ::wxBorder GetDefaultBorder() const SIP_OVERRIDE;
    void DoSetWindowVariant(::wxWindowVariant) SIP_OVERRIDE;
    void DoMoveWindow(int, int, int, int) SIP_OVERRIDE;
    void DoSetSizeHints(int, int, int, int, int, int) SIP_OVERRIDE;
    void DoSetClientSize(int, int) SIP_OVERRIDE;
    void DoSetSize(int, int, int, int, int) SIP_OVERRIDE;
    void DoGetClientSize(int*, int*) const SIP_OVERRIDE;
    void DoGetSize(int*, int*) const SIP_OVERRIDE;
    void DoGetPosition(int*, int*) const SIP_OVERRIDE;
    void DoEnable(bool) SIP_OVERRIDE;
    ::wxWindow* GetMainWindowOfCompositeControl() SIP_OVERRIDE;
    void OnInternalIdle() SIP_OVERRIDE;
    void InitDialog() SIP_OVERRIDE;
    void InheritAttributes() SIP_OVERRIDE;
    bool Destroy() SIP_OVERRIDE;
    bool Validate() SIP_OVERRIDE;
    bool TransferDataToWindow() SIP_OVERRIDE;
    bool TransferDataFromWindow() SIP_OVERRIDE;
    void SetValidator(const ::wxValidator&) SIP_OVERRIDE;
    ::wxValidator* GetValidator() SIP_OVERRIDE;
    bool ShouldInheritColours() const SIP_OVERRIDE;
    bool HasTransparentBackground() SIP_OVERRIDE;
    ::wxPoint GetClientAreaOrigin() const SIP_OVERRIDE;
    bool InformFirstDirection(int, int, int) SIP_OVERRIDE;
    void EnableVisibleFocus(bool) SIP_OVERRIDE;
    void SetCanFocus(bool) SIP_OVERRIDE;
    bool AcceptsFocusRecursively() const SIP_OVERRIDE;
    bool AcceptsFocusFromKeyboard() const SIP_OVERRIDE;
    bool AcceptsFocus() const SIP_OVERRIDE;
    bool TryAfter(::wxEvent&) SIP_OVERRIDE;
    bool TryBefore(::wxEvent&) SIP_OVERRIDE;
    bool ProcessEvent(::wxEvent&) SIP_OVERRIDE;
    void AddChild(::wxWindowBase*) SIP_OVERRIDE;
    void RemoveChild(::wxWindowBase*) SIP_OVERRIDE;

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[41];
};

wxIMPLEMENT_ABSTRACT_CLASS(sipwxTreeCtrl, wxTreeCtrl);

sipwxTreeCtrl::sipwxTreeCtrl(): ::wxTreeCtrl(), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipwxTreeCtrl::sipwxTreeCtrl(::wxWindow*parent, ::wxWindowID id, const ::wxPoint& pos, const ::wxSize& size, long style, const ::wxValidator& validator, const ::wxString& name): ::wxTreeCtrl(parent, id, pos, size, style, validator, name), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

int sipwxTreeCtrl::OnCompareItems(const ::wxTreeItemId& item1, const ::wxTreeItemId& item2)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::OnCompareItems(item1, item2);

    extern int sipVH__core_179(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxTreeItemId&, const ::wxTreeItemId&);

    return sipVH__core_179(sipGILState, 0, sipPySelf, sipMeth, item1, item2);
}

void sipwxTreeCtrl::SetImageList(::wxImageList*imageList)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::SetImageList(imageList);
        return;
    }

    extern void sipVH__core_155(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxImageList*);

    sipVH__core_155(sipGILState, 0, sipPySelf, sipMeth, imageList);
}

::wxSize sipwxTreeCtrl::DoGetBestClientSize() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::DoGetBestClientSize();

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

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

::wxSize sipwxTreeCtrl::DoGetBestSize() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::DoGetBestSize();

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

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

void sipwxTreeCtrl::DoThaw()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[4], &sipPySelf, SIP_NULLPTR, sipName_DoThaw);

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoThaw();
        return;
    }

    extern void sipVH__core_57(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH__core_57(sipGILState, 0, sipPySelf, sipMeth);
}

void sipwxTreeCtrl::DoFreeze()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoFreeze();
        return;
    }

    extern void sipVH__core_57(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH__core_57(sipGILState, 0, sipPySelf, sipMeth);
}

::wxBorder sipwxTreeCtrl::GetDefaultBorderForControl() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::GetDefaultBorderForControl();

    extern ::wxBorder sipVH__core_136(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

::wxBorder sipwxTreeCtrl::GetDefaultBorder() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::GetDefaultBorder();

    extern ::wxBorder sipVH__core_136(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

void sipwxTreeCtrl::DoSetWindowVariant(::wxWindowVariant variant)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[8], &sipPySelf, SIP_NULLPTR, sipName_DoSetWindowVariant);

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoSetWindowVariant(variant);
        return;
    }

    extern void sipVH__core_135(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowVariant);

    sipVH__core_135(sipGILState, 0, sipPySelf, sipMeth, variant);
}

void sipwxTreeCtrl::DoMoveWindow(int x, int y, int width, int height)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoMoveWindow(x, y, width, height);
        return;
    }

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

    sipVH__core_134(sipGILState, 0, sipPySelf, sipMeth, x, y, width, height);
}

void sipwxTreeCtrl::DoSetSizeHints(int minW, int minH, int maxW, int maxH, int incW, int incH)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[10], &sipPySelf, SIP_NULLPTR, sipName_DoSetSizeHints);

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoSetSizeHints(minW, minH, maxW, maxH, incW, incH);
        return;
    }

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

    sipVH__core_133(sipGILState, 0, sipPySelf, sipMeth, minW, minH, maxW, maxH, incW, incH);
}

void sipwxTreeCtrl::DoSetClientSize(int width, int height)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[11], &sipPySelf, SIP_NULLPTR, sipName_DoSetClientSize);

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoSetClientSize(width, height);
        return;
    }

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

    sipVH__core_132(sipGILState, 0, sipPySelf, sipMeth, width, height);
}

void sipwxTreeCtrl::DoSetSize(int x, int y, int width, int height, int sizeFlags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoSetSize(x, y, width, height, sizeFlags);
        return;
    }

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

    sipVH__core_131(sipGILState, 0, sipPySelf, sipMeth, x, y, width, height, sizeFlags);
}

void sipwxTreeCtrl::DoGetClientSize(int*width, int*height) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoGetClientSize(width, height);
        return;
    }

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

    sipVH__core_130(sipGILState, 0, sipPySelf, sipMeth, width, height);
}

void sipwxTreeCtrl::DoGetSize(int*width, int*height) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoGetSize(width, height);
        return;
    }

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

    sipVH__core_130(sipGILState, 0, sipPySelf, sipMeth, width, height);
}

void sipwxTreeCtrl::DoGetPosition(int*x, int*y) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoGetPosition(x, y);
        return;
    }

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

    sipVH__core_130(sipGILState, 0, sipPySelf, sipMeth, x, y);
}

void sipwxTreeCtrl::DoEnable(bool enable)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::DoEnable(enable);
        return;
    }

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

    sipVH__core_96(sipGILState, 0, sipPySelf, sipMeth, enable);
}

::wxWindow* sipwxTreeCtrl::GetMainWindowOfCompositeControl()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::GetMainWindowOfCompositeControl();

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

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

void sipwxTreeCtrl::OnInternalIdle()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::OnInternalIdle();
        return;
    }

    extern void sipVH__core_57(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH__core_57(sipGILState, 0, sipPySelf, sipMeth);
}

void sipwxTreeCtrl::InitDialog()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::InitDialog();
        return;
    }

    extern void sipVH__core_57(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH__core_57(sipGILState, 0, sipPySelf, sipMeth);
}

void sipwxTreeCtrl::InheritAttributes()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::InheritAttributes();
        return;
    }

    extern void sipVH__core_57(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    sipVH__core_57(sipGILState, 0, sipPySelf, sipMeth);
}

bool sipwxTreeCtrl::Destroy()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::Destroy();

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

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

bool sipwxTreeCtrl::Validate()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::Validate();

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

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

bool sipwxTreeCtrl::TransferDataToWindow()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::TransferDataToWindow();

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

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

bool sipwxTreeCtrl::TransferDataFromWindow()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::TransferDataFromWindow();

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

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

void sipwxTreeCtrl::SetValidator(const ::wxValidator& validator)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxTreeCtrl::SetValidator(validator);
        return;
    }

    extern void sipVH__core_128(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxValidator&);

    sipVH__core_128(sipGILState, 0, sipPySelf, sipMeth, validator);
}

::wxValidator* sipwxTreeCtrl::GetValidator()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[26], &sipPySelf, SIP_NULLPTR, sipName_GetValidator);

    if (!sipMeth)
        return ::wxTreeCtrl::GetValidator();

    extern ::wxValidator* sipVH__core_127(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxTreeCtrl::ShouldInheritColours() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::ShouldInheritColours();

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

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

bool sipwxTreeCtrl::HasTransparentBackground()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[28], &sipPySelf, SIP_NULLPTR, sipName_HasTransparentBackground);

    if (!sipMeth)
        return ::wxTreeCtrl::HasTransparentBackground();

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

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

::wxPoint sipwxTreeCtrl::GetClientAreaOrigin() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::GetClientAreaOrigin();

    extern ::wxPoint sipVH__core_126(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

bool sipwxTreeCtrl::InformFirstDirection(int direction, int size, int availableOtherDir)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[30], &sipPySelf, SIP_NULLPTR, sipName_InformFirstDirection);

    if (!sipMeth)
        return ::wxTreeCtrl::InformFirstDirection(direction, size, availableOtherDir);

    extern bool sipVH__core_105(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int, int, int);

    return sipVH__core_105(sipGILState, 0, sipPySelf, sipMeth, direction, size, availableOtherDir);
}

void sipwxTreeCtrl::EnableVisibleFocus(bool enabled)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[31], &sipPySelf, SIP_NULLPTR, sipName_EnableVisibleFocus);

    if (!sipMeth)
    {
        ::wxTreeCtrl::EnableVisibleFocus(enabled);
        return;
    }

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

    sipVH__core_96(sipGILState, 0, sipPySelf, sipMeth, enabled);
}

void sipwxTreeCtrl::SetCanFocus(bool canFocus)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[32], &sipPySelf, SIP_NULLPTR, sipName_SetCanFocus);

    if (!sipMeth)
    {
        ::wxTreeCtrl::SetCanFocus(canFocus);
        return;
    }

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

    sipVH__core_96(sipGILState, 0, sipPySelf, sipMeth, canFocus);
}

bool sipwxTreeCtrl::AcceptsFocusRecursively() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::AcceptsFocusRecursively();

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

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

bool sipwxTreeCtrl::AcceptsFocusFromKeyboard() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::AcceptsFocusFromKeyboard();

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

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

bool sipwxTreeCtrl::AcceptsFocus() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxTreeCtrl::AcceptsFocus();

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

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

bool sipwxTreeCtrl::TryAfter(::wxEvent& event)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[36], &sipPySelf, SIP_NULLPTR, sipName_TryAfter);

    if (!sipMeth)
        return ::wxTreeCtrl::TryAfter(event);

    extern bool sipVH__core_102(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxEvent&);

    return sipVH__core_102(sipGILState, 0, sipPySelf, sipMeth, event);
}

bool sipwxTreeCtrl::TryBefore(::wxEvent& event)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[37], &sipPySelf, SIP_NULLPTR, sipName_TryBefore);

    if (!sipMeth)
        return ::wxTreeCtrl::TryBefore(event);

    extern bool sipVH__core_102(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxEvent&);

    return sipVH__core_102(sipGILState, 0, sipPySelf, sipMeth, event);
}

bool sipwxTreeCtrl::ProcessEvent(::wxEvent& event)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[38], &sipPySelf, SIP_NULLPTR, sipName_ProcessEvent);

    if (!sipMeth)
        return ::wxTreeCtrl::ProcessEvent(event);

    extern bool sipVH__core_102(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxEvent&);

    return sipVH__core_102(sipGILState, 0, sipPySelf, sipMeth, event);
}

void sipwxTreeCtrl::AddChild(::wxWindowBase*child)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[39], &sipPySelf, SIP_NULLPTR, sipName_AddChild);

    if (!sipMeth)
    {
        ::wxTreeCtrl::AddChild(child);
        return;
    }

    extern void sipVH__core_125(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*);

    sipVH__core_125(sipGILState, 0, sipPySelf, sipMeth, child);
}

void sipwxTreeCtrl::RemoveChild(::wxWindowBase*child)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[40], &sipPySelf, SIP_NULLPTR, sipName_RemoveChild);

    if (!sipMeth)
    {
        ::wxTreeCtrl::RemoveChild(child);
        return;
    }

    extern void sipVH__core_125(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*);

    sipVH__core_125(sipGILState, 0, sipPySelf, sipMeth, child);
}

void sipwxTreeCtrl::sipProtect_SendDestroyEvent()
{
    ::wxWindow::SendDestroyEvent();
}

bool sipwxTreeCtrl::sipProtectVirt_ProcessEvent(bool sipSelfWasArg, ::wxEvent& event)
{
    return (sipSelfWasArg ? ::wxTreeCtrl::ProcessEvent(event) : ProcessEvent(event));
}

void sipwxTreeCtrl::sipProtectVirt_DoEnable(bool sipSelfWasArg, bool enable)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoEnable(enable) : DoEnable(enable));
}

void sipwxTreeCtrl::sipProtectVirt_DoGetPosition(bool sipSelfWasArg, int*x, int*y) const
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoGetPosition(x, y) : DoGetPosition(x, y));
}

void sipwxTreeCtrl::sipProtectVirt_DoGetSize(bool sipSelfWasArg, int*width, int*height) const
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoGetSize(width, height) : DoGetSize(width, height));
}

void sipwxTreeCtrl::sipProtectVirt_DoGetClientSize(bool sipSelfWasArg, int*width, int*height) const
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoGetClientSize(width, height) : DoGetClientSize(width, height));
}

::wxSize sipwxTreeCtrl::sipProtectVirt_DoGetBestSize(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxTreeCtrl::DoGetBestSize() : DoGetBestSize());
}

::wxSize sipwxTreeCtrl::sipProtectVirt_DoGetBestClientSize(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxTreeCtrl::DoGetBestClientSize() : DoGetBestClientSize());
}

void sipwxTreeCtrl::sipProtectVirt_DoSetSize(bool sipSelfWasArg, int x, int y, int width, int height, int sizeFlags)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoSetSize(x, y, width, height, sizeFlags) : DoSetSize(x, y, width, height, sizeFlags));
}

void sipwxTreeCtrl::sipProtectVirt_DoSetClientSize(bool sipSelfWasArg, int width, int height)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoSetClientSize(width, height) : DoSetClientSize(width, height));
}

void sipwxTreeCtrl::sipProtectVirt_DoSetSizeHints(bool sipSelfWasArg, int minW, int minH, int maxW, int maxH, int incW, int incH)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoSetSizeHints(minW, minH, maxW, maxH, incW, incH) : DoSetSizeHints(minW, minH, maxW, maxH, incW, incH));
}

void sipwxTreeCtrl::sipProtectVirt_DoMoveWindow(bool sipSelfWasArg, int x, int y, int width, int height)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoMoveWindow(x, y, width, height) : DoMoveWindow(x, y, width, height));
}

void sipwxTreeCtrl::sipProtectVirt_DoSetWindowVariant(bool sipSelfWasArg, ::wxWindowVariant variant)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoSetWindowVariant(variant) : DoSetWindowVariant(variant));
}

::wxBorder sipwxTreeCtrl::sipProtectVirt_GetDefaultBorder(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxTreeCtrl::GetDefaultBorder() : GetDefaultBorder());
}

::wxBorder sipwxTreeCtrl::sipProtectVirt_GetDefaultBorderForControl(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxTreeCtrl::GetDefaultBorderForControl() : GetDefaultBorderForControl());
}

void sipwxTreeCtrl::sipProtectVirt_DoFreeze(bool sipSelfWasArg)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoFreeze() : DoFreeze());
}

void sipwxTreeCtrl::sipProtectVirt_DoThaw(bool sipSelfWasArg)
{
    (sipSelfWasArg ? ::wxTreeCtrl::DoThaw() : DoThaw());
}

bool sipwxTreeCtrl::sipProtectVirt_HasTransparentBackground(bool sipSelfWasArg)
{
    return (sipSelfWasArg ? ::wxTreeCtrl::HasTransparentBackground() : HasTransparentBackground());
}

bool sipwxTreeCtrl::sipProtectVirt_TryBefore(bool sipSelfWasArg, ::wxEvent& event)
{
    return (sipSelfWasArg ? ::wxTreeCtrl::TryBefore(event) : TryBefore(event));
}

bool sipwxTreeCtrl::sipProtectVirt_TryAfter(bool sipSelfWasArg, ::wxEvent& event)
{
    return (sipSelfWasArg ? ::wxTreeCtrl::TryAfter(event) : TryAfter(event));
}


PyDoc_STRVAR(doc_wxTreeCtrl_SendDestroyEvent, "SendDestroyEvent() -> None\n"
"\n"
"Generate wxWindowDestroyEvent for this window.");

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

    {
        sipwxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtect_SendDestroyEvent();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SendDestroyEvent, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AddRoot, "AddRoot(text, image=-1, selImage=-1, data=None) -> TreeItemId\n"
"\n"
"Adds the root node to the tree, returning the new item.");

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

    {
        const ::wxString* text;
        int textState = 0;
        int image = -1;
        int selImage = -1;
        ::wxTreeItemData* data = 0;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_text,
            sipName_image,
            sipName_selImage,
            sipName_data,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1|iiJ2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxString, &text, &textState, &image, &selImage, sipType_wxTreeItemData, &data, &dataState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->AddRoot(*text, image, selImage, data));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AddRoot, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AppendItem, "AppendItem(parent, text, image=-1, selImage=-1, data=None) -> TreeItemId\n"
"\n"
"Appends an item to the end of the branch identified by parent, return\n"
"a new item id.");

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

    {
        const ::wxTreeItemId* parent;
        const ::wxString* text;
        int textState = 0;
        int image = -1;
        int selImage = -1;
        ::wxTreeItemData* data = 0;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_text,
            sipName_image,
            sipName_selImage,
            sipName_data,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1|iiJ2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &parent, sipType_wxString, &text, &textState, &image, &selImage, sipType_wxTreeItemData, &data, &dataState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->AppendItem(*parent, *text, image, selImage, data));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AppendItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AssignStateImageList, "AssignStateImageList(imageList) -> None\n"
"\n"
"Sets the state image list.");

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

    {
        ::wxImageList* imageList;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ:", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxImageList, &imageList))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->AssignStateImageList(imageList);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AssignStateImageList, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Collapse, "Collapse(item) -> None\n"
"\n"
"Collapses the given item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Collapse(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Collapse, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_CollapseAll, "CollapseAll() -> None\n"
"\n"
"Collapses the root item.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->CollapseAll();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_CollapseAll, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_CollapseAllChildren, "CollapseAllChildren(item) -> None\n"
"\n"
"Collapses this item and all of its children, recursively.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->CollapseAllChildren(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_CollapseAllChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_CollapseAndReset, "CollapseAndReset(item) -> None\n"
"\n"
"Collapses the given item and removes all children.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->CollapseAndReset(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_CollapseAndReset, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Create, "Create(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=TR_DEFAULT_STYLE, validator=DefaultValidator, name=TreeCtrlNameStr) -> bool\n"
"\n"
"Creates the tree control.");

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

    {
        ::wxWindow* parent;
        ::wxWindowID id = wxID_ANY;
        const ::wxPoint& posdef = wxDefaultPosition;
        const ::wxPoint* pos = &posdef;
        int posState = 0;
        const ::wxSize& sizedef = wxDefaultSize;
        const ::wxSize* size = &sizedef;
        int sizeState = 0;
        long style = wxTR_DEFAULT_STYLE;
        const ::wxValidator& validatordef = wxDefaultValidator;
        const ::wxValidator* validator = &validatordef;
        const ::wxString& namedef = wxTreeCtrlNameStr;
        const ::wxString* name = &namedef;
        int nameState = 0;
        sipWrapper *sipOwner = SIP_NULLPTR;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_id,
            sipName_pos,
            sipName_size,
            sipName_style,
            sipName_validator,
            sipName_name,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJH|iJ1J1lJ9J1", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxWindow, &parent, &sipOwner, &id, sipType_wxPoint, &pos, &posState, sipType_wxSize, &size, &sizeState, &style, sipType_wxValidator, &validator, sipType_wxString, &name, &nameState))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->Create(parent, id, *pos, *size, style, *validator, *name);
            Py_END_ALLOW_THREADS

            if (sipOwner)
                sipTransferTo(sipSelf, (PyObject *)sipOwner);
            else
                sipTransferBack(sipSelf);
            sipReleaseType(const_cast< ::wxPoint *>(pos), sipType_wxPoint, posState);
            sipReleaseType(const_cast< ::wxSize *>(size), sipType_wxSize, sizeState);
            sipReleaseType(const_cast< ::wxString *>(name), sipType_wxString, nameState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Create, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Delete, "Delete(item) -> None\n"
"\n"
"Deletes the specified item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Delete(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Delete, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DeleteAllItems, "DeleteAllItems() -> None\n"
"\n"
"Deletes all items in the control.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->DeleteAllItems();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DeleteAllItems, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DeleteChildren, "DeleteChildren(item) -> None\n"
"\n"
"Deletes all children of the given item (but not the item itself).");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->DeleteChildren(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DeleteChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EditLabel, "EditLabel(item) -> TextCtrl\n"
"\n"
"Starts editing the label of the given item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTextCtrl*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->EditLabel(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EditLabel, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EnableBellOnNoMatch, "EnableBellOnNoMatch(on=True) -> None\n"
"\n"
"Enable or disable a beep if there is no match for the currently\n"
"entered text when searching for the item from keyboard.");

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

    {
        bool on = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &on))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->EnableBellOnNoMatch(on);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EnableBellOnNoMatch, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EndEditLabel, "EndEditLabel(item, discardChanges=False) -> None\n"
"\n"
"Ends label editing.");

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

    {
        const ::wxTreeItemId* item;
        bool discardChanges = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &discardChanges))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->EndEditLabel(*item, discardChanges);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EndEditLabel, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EnsureVisible, "EnsureVisible(item) -> None\n"
"\n"
"Scrolls and/or expands items to ensure that the given item is visible.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->EnsureVisible(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EnsureVisible, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Expand, "Expand(item) -> None\n"
"\n"
"Expands the given item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Expand(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Expand, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ExpandAll, "ExpandAll() -> None\n"
"\n"
"Expands all items in the tree.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->ExpandAll();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ExpandAll, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ExpandAllChildren, "ExpandAllChildren(item) -> None\n"
"\n"
"Expands the given item and all its children recursively.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->ExpandAllChildren(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ExpandAllChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetBoundingRect, "GetBoundingRect(item, textOnly=False) -> Any\n"
"\n"
"Returns the rectangle bounding the item. If textOnly is true,\n"
"only the rectangle around the item's label will be returned, otherwise\n"
"the item's image is also taken into account. The return value may be\n"
"None\n"
"if the rectangle was not successfully retrieved, such as if the item\n"
"is\n"
"currently not visible.");

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

    {
        const ::wxTreeItemId* item;
        bool textOnly = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &textOnly))
        {
            PyObject * sipRes = SIP_NULLPTR;
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxTreeCtrl_GetBoundingRect(sipCpp, item, textOnly);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

            return sipRes;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetBoundingRect, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetChildrenCount, "GetChildrenCount(item, recursively=True) -> int\n"
"\n"
"Returns the number of items in the branch.");

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

    {
        const ::wxTreeItemId* item;
        bool recursively = 1;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &recursively))
        {
            size_t sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetChildrenCount(*item, recursively);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetChildrenCount, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetCount, "GetCount() -> int\n"
"\n"
"Returns the number of items in the control.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetCount();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetCount, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetEditControl, "GetEditControl() -> TextCtrl\n"
"\n"
"Returns the edit control being currently used to edit a label.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetEditControl();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetEditControl, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetFirstChild, "GetFirstChild(item) -> Tuple[TreeItemId, TreeItemIdValue]\n"
"\n"
"Returns the first child; call GetNextChild() for the next child.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeItemIdValue cookie;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetFirstChild(*item, cookie));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            PyObject *sipResObj = sipConvertFromNewType(sipRes, sipType_wxTreeItemId, SIP_NULLPTR);
            return sipBuildResult(0, "(RV)", sipResObj, cookie);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetFirstChild, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetFirstVisibleItem, "GetFirstVisibleItem() -> TreeItemId\n"
"\n"
"Returns the first visible item.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetFirstVisibleItem());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetFirstVisibleItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetFocusedItem, "GetFocusedItem() -> TreeItemId\n"
"\n"
"Returns the item last clicked or otherwise selected.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetFocusedItem());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetFocusedItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ClearFocusedItem, "ClearFocusedItem() -> None\n"
"\n"
"Clears the currently focused item.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->ClearFocusedItem();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ClearFocusedItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetFocusedItem, "SetFocusedItem(item) -> None\n"
"\n"
"Sets the currently focused item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetFocusedItem(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetFocusedItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetIndent, "GetIndent() -> int\n"
"\n"
"Returns the current tree control indentation.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetIndent();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetIndent, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetSpacing, "GetSpacing() -> int\n"
"\n"
"Returns the current tree control spacing.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetSpacing();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetSpacing, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemBackgroundColour, "GetItemBackgroundColour(item) -> Colour\n"
"\n"
"Returns the background colour of the item.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxColour*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxColour(sipCpp->GetItemBackgroundColour(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemBackgroundColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemData, "GetItemData(item) -> TreeItemData\n"
"\n"
"Returns the tree item data associated with the item.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemData*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetItemData(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemData, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemFont, "GetItemFont(item) -> Font\n"
"\n"
"Returns the font of the item label.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxFont*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxFont(sipCpp->GetItemFont(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemFont, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemImage, "GetItemImage(item, which=TreeItemIcon_Normal) -> int\n"
"\n"
"Gets the specified item image.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeItemIcon which = wxTreeItemIcon_Normal;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|E", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxTreeItemIcon, &which))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetItemImage(*item, which);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemImage, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemParent, "GetItemParent(item) -> TreeItemId\n"
"\n"
"Returns the item's parent.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetItemParent(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemParent, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemState, "GetItemState(item) -> int\n"
"\n"
"Gets the specified item state.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetItemState(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemState, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemText, "GetItemText(item) -> str\n"
"\n"
"Returns the item label.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxString*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxString(sipCpp->GetItemText(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemText, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetItemTextColour, "GetItemTextColour(item) -> Colour\n"
"\n"
"Returns the colour of the item label.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxColour*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxColour(sipCpp->GetItemTextColour(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetItemTextColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetLastChild, "GetLastChild(item) -> TreeItemId\n"
"\n"
"Returns the last child of the item (or an invalid tree item if this\n"
"item has no children).");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetLastChild(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetLastChild, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetNextChild, "GetNextChild(item, cookie) -> Tuple[TreeItemId, TreeItemIdValue]\n"
"\n"
"Returns the next child; call GetFirstChild() for the first child.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeItemIdValue cookie;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9v", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &cookie))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetNextChild(*item, cookie));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            PyObject *sipResObj = sipConvertFromNewType(sipRes, sipType_wxTreeItemId, SIP_NULLPTR);
            return sipBuildResult(0, "(RV)", sipResObj, cookie);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetNextChild, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetNextSibling, "GetNextSibling(item) -> TreeItemId\n"
"\n"
"Returns the next sibling of the specified item; call GetPrevSibling()\n"
"for the previous sibling.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetNextSibling(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetNextSibling, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetNextVisible, "GetNextVisible(item) -> TreeItemId\n"
"\n"
"Returns the next visible item or an invalid item if this item is the\n"
"last visible one.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetNextVisible(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetNextVisible, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetPrevSibling, "GetPrevSibling(item) -> TreeItemId\n"
"\n"
"Returns the previous sibling of the specified item; call\n"
"GetNextSibling() for the next sibling.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetPrevSibling(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetPrevSibling, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetPrevVisible, "GetPrevVisible(item) -> TreeItemId\n"
"\n"
"Returns the previous visible item or an invalid item if this item is\n"
"the first visible one.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetPrevVisible(*item));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetPrevVisible, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetQuickBestSize, "GetQuickBestSize() -> bool\n"
"\n"
"Returns true if the control will use a quick calculation for the best\n"
"size, looking only at the first and last items.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetQuickBestSize();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetQuickBestSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetRootItem, "GetRootItem() -> TreeItemId\n"
"\n"
"Returns the root item for the tree control.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetRootItem());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetRootItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetSelection, "GetSelection() -> TreeItemId\n"
"\n"
"Returns the selection, or an invalid item if there is no selection.");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->GetSelection());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetSelection, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetSelections, "GetSelections() -> Any\n"
"\n"
"Returns a list of currently selected items in the tree.  This function\n"
"can be called only if the control has the wx.TR_MULTIPLE style.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyObject * sipRes = SIP_NULLPTR;
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxTreeCtrl_GetSelections(sipCpp);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

            return sipRes;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetSelections, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetStateImageList, "GetStateImageList() -> ImageList\n"
"\n"
"Returns the state image list (from which application-defined state\n"
"images are taken).");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetStateImageList();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetStateImageList, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_HitTest, "HitTest(point, flags) -> TreeItemId\n"
"\n"
"Calculates which (if any) item is under the given point, returning the\n"
"tree item id at this point plus extra information flags.");

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

    {
        const ::wxPoint* point;
        int pointState = 0;
        int flags;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxPoint, &point, &pointState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->HitTest(*point, flags));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxPoint *>(point), sipType_wxPoint, pointState);

            if (PyErr_Occurred())
                return 0;

            PyObject *sipResObj = sipConvertFromNewType(sipRes, sipType_wxTreeItemId, SIP_NULLPTR);
            return sipBuildResult(0, "(Ri)", sipResObj, flags);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_HitTest, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_InsertItem, "InsertItem(parent, previous, text, image=-1, selImage=-1, data=None) -> TreeItemId\n"
"InsertItem(parent, pos, text, image=-1, selImage=-1, data=None) -> TreeItemId\n"
"\n"
"Inserts an item after a given one (previous).\n"
"");

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

    {
        const ::wxTreeItemId* parent;
        const ::wxTreeItemId* previous;
        const ::wxString* text;
        int textState = 0;
        int image = -1;
        int selImage = -1;
        ::wxTreeItemData* data = 0;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_previous,
            sipName_text,
            sipName_image,
            sipName_selImage,
            sipName_data,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J9J1|iiJ2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &parent, sipType_wxTreeItemId, &previous, sipType_wxString, &text, &textState, &image, &selImage, sipType_wxTreeItemData, &data, &dataState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->InsertItem(*parent, *previous, *text, image, selImage, data));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

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

    {
        const ::wxTreeItemId* parent;
        size_t pos;
        const ::wxString* text;
        int textState = 0;
        int image = -1;
        int selImage = -1;
        ::wxTreeItemData* data = 0;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_pos,
            sipName_text,
            sipName_image,
            sipName_selImage,
            sipName_data,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9=J1|iiJ2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &parent, &pos, sipType_wxString, &text, &textState, &image, &selImage, sipType_wxTreeItemData, &data, &dataState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->InsertItem(*parent, pos, *text, image, selImage, data));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_InsertItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_IsBold, "IsBold(item) -> bool\n"
"\n"
"Returns true if the given item is in bold state.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsBold(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_IsBold, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_IsEmpty, "IsEmpty() -> bool\n"
"\n"
"Returns true if the control is empty (i.e. has no items, even no root\n"
"one).");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsEmpty();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_IsEmpty, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_IsExpanded, "IsExpanded(item) -> bool\n"
"\n"
"Returns true if the item is expanded (only makes sense if it has\n"
"children).");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsExpanded(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_IsExpanded, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_IsSelected, "IsSelected(item) -> bool\n"
"\n"
"Returns true if the item is selected.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsSelected(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_IsSelected, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_IsVisible, "IsVisible(item) -> bool\n"
"\n"
"Returns true if the item is visible on the screen.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsVisible(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_IsVisible, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ItemHasChildren, "ItemHasChildren(item) -> bool\n"
"\n"
"Returns true if the item has children.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->ItemHasChildren(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ItemHasChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_OnCompareItems, "OnCompareItems(item1, item2) -> int\n"
"\n"
"Override this function in the derived class to change the sort order\n"
"of the items in the tree control.");

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

    {
        const ::wxTreeItemId* item1;
        const ::wxTreeItemId* item2;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item1, sipType_wxTreeItemId, &item2))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::OnCompareItems(*item1, *item2) : sipCpp->OnCompareItems(*item1, *item2));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_OnCompareItems, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_PrependItem, "PrependItem(parent, text, image=-1, selImage=-1, data=None) -> TreeItemId\n"
"\n"
"Appends an item as the first child of parent, return a new item id.");

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

    {
        const ::wxTreeItemId* parent;
        const ::wxString* text;
        int textState = 0;
        int image = -1;
        int selImage = -1;
        ::wxTreeItemData* data = 0;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_text,
            sipName_image,
            sipName_selImage,
            sipName_data,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1|iiJ2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &parent, sipType_wxString, &text, &textState, &image, &selImage, sipType_wxTreeItemData, &data, &dataState))
        {
            ::wxTreeItemId*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxTreeItemId(sipCpp->PrependItem(*parent, *text, image, selImage, data));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_PrependItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ScrollTo, "ScrollTo(item) -> None\n"
"\n"
"Scrolls the specified item into view.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->ScrollTo(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ScrollTo, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SelectItem, "SelectItem(item, select=True) -> None\n"
"\n"
"Selects the given item.");

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

    {
        const ::wxTreeItemId* item;
        bool select = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &select))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SelectItem(*item, select);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SelectItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetIndent, "SetIndent(indent) -> None\n"
"\n"
"Sets the indentation for the tree control.");

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

    {
        uint indent;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bu", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &indent))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetIndent(indent);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetIndent, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetSpacing, "SetSpacing(spacing) -> None\n"
"\n"
"Sets the spacing for the tree control.");

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

    {
        uint spacing;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bu", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &spacing))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetSpacing(spacing);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetSpacing, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemBackgroundColour, "SetItemBackgroundColour(item, col) -> None\n"
"\n"
"Sets the colour of the item's background.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxColour* col;
        int colState = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxColour, &col, &colState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemBackgroundColour(*item, *col);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxColour *>(col), sipType_wxColour, colState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemBackgroundColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemBold, "SetItemBold(item, bold=True) -> None\n"
"\n"
"Makes item appear in bold font if bold parameter is true or resets it\n"
"to the normal state.");

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

    {
        const ::wxTreeItemId* item;
        bool bold = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &bold))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemBold(*item, bold);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemBold, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemData, "SetItemData(item, data) -> None\n"
"\n"
"Sets the item client data.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeItemData* data;
        int dataState = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J2", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxTreeItemData, &data, &dataState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemData(*item, data);
            Py_END_ALLOW_THREADS
            sipReleaseType(data, sipType_wxTreeItemData, dataState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemData, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemDropHighlight, "SetItemDropHighlight(item, highlight=True) -> None\n"
"\n"
"Gives the item the visual feedback for Drag'n'Drop actions, which is\n"
"useful if something is dragged from the outside onto the tree control\n"
"(as opposed to a DnD operation within the tree control, which already\n"
"is implemented internally).");

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

    {
        const ::wxTreeItemId* item;
        bool highlight = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &highlight))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemDropHighlight(*item, highlight);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemDropHighlight, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemFont, "SetItemFont(item, font) -> None\n"
"\n"
"Sets the item's font.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxFont* font;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxFont, &font))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemFont(*item, *font);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemFont, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemHasChildren, "SetItemHasChildren(item, hasChildren=True) -> None\n"
"\n"
"Force appearance of the button next to the item.");

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

    {
        const ::wxTreeItemId* item;
        bool hasChildren = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &hasChildren))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemHasChildren(*item, hasChildren);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemHasChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemImage, "SetItemImage(item, image, which=TreeItemIcon_Normal) -> None\n"
"\n"
"Sets the specified item's image.");

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

    {
        const ::wxTreeItemId* item;
        int image;
        ::wxTreeItemIcon which = wxTreeItemIcon_Normal;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9i|E", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &image, sipType_wxTreeItemIcon, &which))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemImage(*item, image, which);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemImage, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemState, "SetItemState(item, state) -> None\n"
"\n"
"Sets the specified item state.");

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

    {
        const ::wxTreeItemId* item;
        int state;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9i", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, &state))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemState(*item, state);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemState, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemText, "SetItemText(item, text) -> None\n"
"\n"
"Sets the item label.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxString* text;
        int textState = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxString, &text, &textState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemText(*item, *text);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(text), sipType_wxString, textState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemText, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetItemTextColour, "SetItemTextColour(item, col) -> None\n"
"\n"
"Sets the colour of the item's text.");

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

    {
        const ::wxTreeItemId* item;
        const ::wxColour* col;
        int colState = 0;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item, sipType_wxColour, &col, &colState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetItemTextColour(*item, *col);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxColour *>(col), sipType_wxColour, colState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetItemTextColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetQuickBestSize, "SetQuickBestSize(quickBestSize) -> None\n"
"\n"
"If true is passed, specifies that the control will use a quick\n"
"calculation for the best size, looking only at the first and last\n"
"items.");

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

    {
        bool quickBestSize;
        ::wxTreeCtrl *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetQuickBestSize(quickBestSize);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetQuickBestSize, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetStateImageList, "SetStateImageList(imageList) -> None\n"
"\n"
"Sets the state image list (from which application-defined state images\n"
"are taken).");

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

    {
        ::wxImageList* imageList;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxImageList, &imageList))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetStateImageList(imageList);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetStateImageList, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetWindowStyle, "SetWindowStyle(styles) -> None\n"
"\n"
"Sets the mode flags associated with the display of the tree control.");

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

    {
        long styles;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bl", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &styles))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetWindowStyle(styles);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetWindowStyle, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SortChildren, "SortChildren(item) -> None\n"
"\n"
"Sorts the children of the given item using OnCompareItems().");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SortChildren(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SortChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Toggle, "Toggle(item) -> None\n"
"\n"
"Toggles the given item between collapsed and expanded states.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Toggle(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Toggle, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ToggleItemSelection, "ToggleItemSelection(item) -> None\n"
"\n"
"Toggles the given item between selected and unselected states.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->ToggleItemSelection(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ToggleItemSelection, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Unselect, "Unselect() -> None\n"
"\n"
"Removes the selection from the currently selected item (if any).");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Unselect();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Unselect, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_UnselectAll, "UnselectAll() -> None\n"
"\n"
"This function either behaves the same as Unselect() if the control\n"
"doesn't have wxTR_MULTIPLE style, or removes the selection from all\n"
"items if it does have this style.");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->UnselectAll();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_UnselectAll, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_UnselectItem, "UnselectItem(item) -> None\n"
"\n"
"Unselects the given item.");

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

    {
        const ::wxTreeItemId* item;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &item))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->UnselectItem(*item);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_UnselectItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SelectChildren, "SelectChildren(parent) -> None\n"
"\n"
"Select all the immediate children of the given parent.");

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

    {
        const ::wxTreeItemId* parent;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxTreeItemId, &parent))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SelectChildren(*parent);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SelectChildren, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetClientAreaOrigin, "GetClientAreaOrigin(self) -> Point");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxPoint((sipSelfWasArg ? sipCpp->::wxTreeCtrl::GetClientAreaOrigin() : sipCpp->GetClientAreaOrigin()));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetClientAreaOrigin, doc_wxTreeCtrl_GetClientAreaOrigin);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Validate, "Validate(self) -> bool");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::Validate() : sipCpp->Validate());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Validate, doc_wxTreeCtrl_Validate);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_TransferDataToWindow, "TransferDataToWindow(self) -> bool");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::TransferDataToWindow() : sipCpp->TransferDataToWindow());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_TransferDataToWindow, doc_wxTreeCtrl_TransferDataToWindow);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_TransferDataFromWindow, "TransferDataFromWindow(self) -> bool");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::TransferDataFromWindow() : sipCpp->TransferDataFromWindow());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_TransferDataFromWindow, doc_wxTreeCtrl_TransferDataFromWindow);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_InitDialog, "InitDialog(self)");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::InitDialog() : sipCpp->InitDialog());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_InitDialog, doc_wxTreeCtrl_InitDialog);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AcceptsFocus, "AcceptsFocus(self) -> bool");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::AcceptsFocus() : sipCpp->AcceptsFocus());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AcceptsFocus, doc_wxTreeCtrl_AcceptsFocus);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AcceptsFocusRecursively, "AcceptsFocusRecursively(self) -> bool");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::AcceptsFocusRecursively() : sipCpp->AcceptsFocusRecursively());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AcceptsFocusRecursively, doc_wxTreeCtrl_AcceptsFocusRecursively);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AcceptsFocusFromKeyboard, "AcceptsFocusFromKeyboard(self) -> bool");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::AcceptsFocusFromKeyboard() : sipCpp->AcceptsFocusFromKeyboard());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AcceptsFocusFromKeyboard, doc_wxTreeCtrl_AcceptsFocusFromKeyboard);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_AddChild, "AddChild(self, child: WindowBase|None)");

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

    {
        ::wxWindowBase* child;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxWindowBase, &child))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::AddChild(child) : sipCpp->AddChild(child));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_AddChild, doc_wxTreeCtrl_AddChild);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_RemoveChild, "RemoveChild(self, child: WindowBase|None)");

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

    {
        ::wxWindowBase* child;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxWindowBase, &child))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::RemoveChild(child) : sipCpp->RemoveChild(child));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_RemoveChild, doc_wxTreeCtrl_RemoveChild);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_InheritAttributes, "InheritAttributes(self)");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::InheritAttributes() : sipCpp->InheritAttributes());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_InheritAttributes, doc_wxTreeCtrl_InheritAttributes);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ShouldInheritColours, "ShouldInheritColours(self) -> bool");

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

    {
        const ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::ShouldInheritColours() : sipCpp->ShouldInheritColours());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ShouldInheritColours, doc_wxTreeCtrl_ShouldInheritColours);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_OnInternalIdle, "OnInternalIdle(self)");

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

    {
        ::wxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::OnInternalIdle() : sipCpp->OnInternalIdle());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_OnInternalIdle, doc_wxTreeCtrl_OnInternalIdle);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetMainWindowOfCompositeControl, "GetMainWindowOfCompositeControl(self) -> Window|None");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::GetMainWindowOfCompositeControl() : sipCpp->GetMainWindowOfCompositeControl());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetMainWindowOfCompositeControl, doc_wxTreeCtrl_GetMainWindowOfCompositeControl);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_InformFirstDirection, "InformFirstDirection(self, direction: int, size: int, availableOtherDir: int) -> bool");

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

    {
        int direction;
        int size;
        int availableOtherDir;
        ::wxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_direction,
            sipName_size,
            sipName_availableOtherDir,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Biii", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &direction, &size, &availableOtherDir))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::InformFirstDirection(direction, size, availableOtherDir) : sipCpp->InformFirstDirection(direction, size, availableOtherDir));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_InformFirstDirection, doc_wxTreeCtrl_InformFirstDirection);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetCanFocus, "SetCanFocus(self, canFocus: bool)");

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

    {
        bool canFocus;
        ::wxTreeCtrl *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::SetCanFocus(canFocus) : sipCpp->SetCanFocus(canFocus));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetCanFocus, doc_wxTreeCtrl_SetCanFocus);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_Destroy, "Destroy(self) -> bool");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::Destroy() : sipCpp->Destroy());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_Destroy, doc_wxTreeCtrl_Destroy);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_SetValidator, "SetValidator(self, validator: Validator)");

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

    {
        const ::wxValidator* validator;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxValidator, &validator))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::SetValidator(*validator) : sipCpp->SetValidator(*validator));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_SetValidator, doc_wxTreeCtrl_SetValidator);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetValidator, "GetValidator(self) -> Validator|None");

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

    {
        ::wxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxTreeCtrl::GetValidator() : sipCpp->GetValidator());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetValidator, doc_wxTreeCtrl_GetValidator);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EnableVisibleFocus, "EnableVisibleFocus(self, enabled: bool)");

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

    {
        bool enabled;
        ::wxTreeCtrl *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxTreeCtrl::EnableVisibleFocus(enabled) : sipCpp->EnableVisibleFocus(enabled));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EnableVisibleFocus, doc_wxTreeCtrl_EnableVisibleFocus);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_ProcessEvent, "ProcessEvent(self, event: Event) -> bool");

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

    {
        ::wxEvent* event;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxEvent, &event))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_ProcessEvent(sipSelfWasArg, *event);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_ProcessEvent, doc_wxTreeCtrl_ProcessEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoEnable, "DoEnable(self, enable: bool)");

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

    {
        bool enable;
        sipwxTreeCtrl *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoEnable(sipSelfWasArg, enable);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoEnable, doc_wxTreeCtrl_DoEnable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoGetPosition, "DoGetPosition(self) -> (int, int)");

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

    {
        int x;
        int y;
        const sipwxTreeCtrl *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoGetPosition(sipSelfWasArg, &x, &y);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipBuildResult(0, "(ii)", x, y);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoGetPosition, doc_wxTreeCtrl_DoGetPosition);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoGetSize, "DoGetSize(self) -> (int, int)");

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

    {
        int width;
        int height;
        const sipwxTreeCtrl *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoGetSize(sipSelfWasArg, &width, &height);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipBuildResult(0, "(ii)", width, height);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoGetSize, doc_wxTreeCtrl_DoGetSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoGetClientSize, "DoGetClientSize(self) -> (int, int)");

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

    {
        int width;
        int height;
        const sipwxTreeCtrl *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoGetClientSize(sipSelfWasArg, &width, &height);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return sipBuildResult(0, "(ii)", width, height);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoGetClientSize, doc_wxTreeCtrl_DoGetClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoGetBestSize, "DoGetBestSize(self) -> Size");

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

    {
        const sipwxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSize(sipCpp->sipProtectVirt_DoGetBestSize(sipSelfWasArg));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoGetBestSize, doc_wxTreeCtrl_DoGetBestSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoGetBestClientSize, "DoGetBestClientSize(self) -> Size");

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

    {
        const sipwxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxSize(sipCpp->sipProtectVirt_DoGetBestClientSize(sipSelfWasArg));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoGetBestClientSize, doc_wxTreeCtrl_DoGetBestClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoSetSize, "DoSetSize(self, x: int, y: int, width: int, height: int, sizeFlags: int)");

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

    {
        int x;
        int y;
        int width;
        int height;
        int sizeFlags;
        sipwxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_x,
            sipName_y,
            sipName_width,
            sipName_height,
            sipName_sizeFlags,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Biiiii", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &x, &y, &width, &height, &sizeFlags))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoSetSize(sipSelfWasArg, x, y, width, height, sizeFlags);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoSetSize, doc_wxTreeCtrl_DoSetSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoSetClientSize, "DoSetClientSize(self, width: int, height: int)");

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

    {
        int width;
        int height;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bii", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &width, &height))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoSetClientSize(sipSelfWasArg, width, height);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoSetClientSize, doc_wxTreeCtrl_DoSetClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoSetSizeHints, "DoSetSizeHints(self, minW: int, minH: int, maxW: int, maxH: int, incW: int, incH: int)");

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

    {
        int minW;
        int minH;
        int maxW;
        int maxH;
        int incW;
        int incH;
        sipwxTreeCtrl *sipCpp;

        static const char *sipKwdList[] = {
            sipName_minW,
            sipName_minH,
            sipName_maxW,
            sipName_maxH,
            sipName_incW,
            sipName_incH,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Biiiiii", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &minW, &minH, &maxW, &maxH, &incW, &incH))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoSetSizeHints(sipSelfWasArg, minW, minH, maxW, maxH, incW, incH);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoSetSizeHints, doc_wxTreeCtrl_DoSetSizeHints);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoMoveWindow, "DoMoveWindow(self, x: int, y: int, width: int, height: int)");

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

    {
        int x;
        int y;
        int width;
        int height;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Biiii", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &x, &y, &width, &height))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoMoveWindow(sipSelfWasArg, x, y, width, height);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoMoveWindow, doc_wxTreeCtrl_DoMoveWindow);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoSetWindowVariant, "DoSetWindowVariant(self, variant: WindowVariant)");

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

    {
        ::wxWindowVariant variant;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxWindowVariant, &variant))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoSetWindowVariant(sipSelfWasArg, variant);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoSetWindowVariant, doc_wxTreeCtrl_DoSetWindowVariant);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetDefaultBorder, "GetDefaultBorder(self) -> Border");

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

    {
        const sipwxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_GetDefaultBorder(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetDefaultBorder, doc_wxTreeCtrl_GetDefaultBorder);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetDefaultBorderForControl, "GetDefaultBorderForControl(self) -> Border");

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

    {
        const sipwxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_GetDefaultBorderForControl(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetDefaultBorderForControl, doc_wxTreeCtrl_GetDefaultBorderForControl);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoFreeze, "DoFreeze(self)");

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

    {
        sipwxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoFreeze(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoFreeze, doc_wxTreeCtrl_DoFreeze);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_DoThaw, "DoThaw(self)");

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

    {
        sipwxTreeCtrl *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxTreeCtrl, &sipCpp))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->sipProtectVirt_DoThaw(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_DoThaw, doc_wxTreeCtrl_DoThaw);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_HasTransparentBackground, "HasTransparentBackground(self) -> bool");

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

    {
        sipwxTreeCtrl *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_HasTransparentBackground(sipSelfWasArg);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_HasTransparentBackground, doc_wxTreeCtrl_HasTransparentBackground);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_TryBefore, "TryBefore(self, event: Event) -> bool");

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

    {
        ::wxEvent* event;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxEvent, &event))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_TryBefore(sipSelfWasArg, *event);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_TryBefore, doc_wxTreeCtrl_TryBefore);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_TryAfter, "TryAfter(self, event: Event) -> bool");

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

    {
        ::wxEvent* event;
        sipwxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxTreeCtrl, &sipCpp, sipType_wxEvent, &event))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->sipProtectVirt_TryAfter(sipSelfWasArg, *event);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_TryAfter, doc_wxTreeCtrl_TryAfter);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_GetClassDefaultAttributes, "GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes");

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

    {
        ::wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "|E", sipType_wxWindowVariant, &variant))
        {
            ::wxVisualAttributes*sipRes;
        if (!wxPyCheckForApp()) return NULL;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxVisualAttributes(::wxTreeCtrl::GetClassDefaultAttributes(variant));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_GetClassDefaultAttributes, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxTreeCtrl_EnableSystemTheme, "EnableSystemTheme(enable=True) -> None\n"
"\n"
"Can be used to disable the system theme of controls using it by\n"
"default.");

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

    {
        bool enable = 1;
        ::wxTreeCtrl *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|b", &sipSelf, sipType_wxTreeCtrl, &sipCpp, &enable))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->EnableSystemTheme(enable);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_TreeCtrl, sipName_EnableSystemTheme, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_wxTreeCtrl)
        return sipCppV;

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

    if (targetType == sipType_wxWithImages)
        return static_cast< ::wxWithImages *>(sipCpp);

    return SIP_NULLPTR;
}


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

    if (sipState & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipwxTreeCtrl *>(sipCppV);
    else
        delete reinterpret_cast< ::wxTreeCtrl *>(sipCppV);

    Py_END_ALLOW_THREADS
}


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

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


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

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxTreeCtrl();
            Py_END_ALLOW_THREADS

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        ::wxWindow* parent;
        ::wxWindowID id = wxID_ANY;
        const ::wxPoint& posdef = wxDefaultPosition;
        const ::wxPoint* pos = &posdef;
        int posState = 0;
        const ::wxSize& sizedef = wxDefaultSize;
        const ::wxSize* size = &sizedef;
        int sizeState = 0;
        long style = wxTR_DEFAULT_STYLE;
        const ::wxValidator& validatordef = wxDefaultValidator;
        const ::wxValidator* validator = &validatordef;
        const ::wxString& namedef = wxTreeCtrlNameStr;
        const ::wxString* name = &namedef;
        int nameState = 0;

        static const char *sipKwdList[] = {
            sipName_parent,
            sipName_id,
            sipName_pos,
            sipName_size,
            sipName_style,
            sipName_validator,
            sipName_name,
        };

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "JH|iJ1J1lJ9J1", sipType_wxWindow, &parent, sipOwner, &id, sipType_wxPoint, &pos, &posState, sipType_wxSize, &size, &sizeState, &style, sipType_wxValidator, &validator, sipType_wxString, &name, &nameState))
        {
        if (!wxPyCheckForApp()) return NULL;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxTreeCtrl(parent, id, *pos, *size, style, *validator, *name);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxPoint *>(pos), sipType_wxPoint, posState);
            sipReleaseType(const_cast< ::wxSize *>(size), sipType_wxSize, sizeState);
            sipReleaseType(const_cast< ::wxString *>(name), sipType_wxString, nameState);

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

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_wxTreeCtrl[] = {{97, 255, 0}, {643, 255, 1}};


static PyMethodDef methods_wxTreeCtrl[] = {
    {sipName_AcceptsFocus, meth_wxTreeCtrl_AcceptsFocus, METH_VARARGS, doc_wxTreeCtrl_AcceptsFocus},
    {sipName_AcceptsFocusFromKeyboard, meth_wxTreeCtrl_AcceptsFocusFromKeyboard, METH_VARARGS, doc_wxTreeCtrl_AcceptsFocusFromKeyboard},
    {sipName_AcceptsFocusRecursively, meth_wxTreeCtrl_AcceptsFocusRecursively, METH_VARARGS, doc_wxTreeCtrl_AcceptsFocusRecursively},
    {sipName_AddChild, SIP_MLMETH_CAST(meth_wxTreeCtrl_AddChild), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_AddChild},
    {sipName_AddRoot, SIP_MLMETH_CAST(meth_wxTreeCtrl_AddRoot), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_AddRoot},
    {sipName_AppendItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_AppendItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_AppendItem},
    {sipName_AssignStateImageList, SIP_MLMETH_CAST(meth_wxTreeCtrl_AssignStateImageList), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_AssignStateImageList},
    {sipName_ClearFocusedItem, meth_wxTreeCtrl_ClearFocusedItem, METH_VARARGS, doc_wxTreeCtrl_ClearFocusedItem},
    {sipName_Collapse, SIP_MLMETH_CAST(meth_wxTreeCtrl_Collapse), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_Collapse},
    {sipName_CollapseAll, meth_wxTreeCtrl_CollapseAll, METH_VARARGS, doc_wxTreeCtrl_CollapseAll},
    {sipName_CollapseAllChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_CollapseAllChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_CollapseAllChildren},
    {sipName_CollapseAndReset, SIP_MLMETH_CAST(meth_wxTreeCtrl_CollapseAndReset), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_CollapseAndReset},
    {sipName_Create, SIP_MLMETH_CAST(meth_wxTreeCtrl_Create), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_Create},
    {sipName_Delete, SIP_MLMETH_CAST(meth_wxTreeCtrl_Delete), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_Delete},
    {sipName_DeleteAllItems, meth_wxTreeCtrl_DeleteAllItems, METH_VARARGS, doc_wxTreeCtrl_DeleteAllItems},
    {sipName_DeleteChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_DeleteChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DeleteChildren},
    {sipName_Destroy, meth_wxTreeCtrl_Destroy, METH_VARARGS, doc_wxTreeCtrl_Destroy},
    {sipName_DoEnable, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoEnable), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoEnable},
    {sipName_DoFreeze, meth_wxTreeCtrl_DoFreeze, METH_VARARGS, doc_wxTreeCtrl_DoFreeze},
    {sipName_DoGetBestClientSize, meth_wxTreeCtrl_DoGetBestClientSize, METH_VARARGS, doc_wxTreeCtrl_DoGetBestClientSize},
    {sipName_DoGetBestSize, meth_wxTreeCtrl_DoGetBestSize, METH_VARARGS, doc_wxTreeCtrl_DoGetBestSize},
    {sipName_DoGetClientSize, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoGetClientSize), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoGetClientSize},
    {sipName_DoGetPosition, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoGetPosition), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoGetPosition},
    {sipName_DoGetSize, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoGetSize), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoGetSize},
    {sipName_DoMoveWindow, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoMoveWindow), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoMoveWindow},
    {sipName_DoSetClientSize, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoSetClientSize), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoSetClientSize},
    {sipName_DoSetSize, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoSetSize), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoSetSize},
    {sipName_DoSetSizeHints, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoSetSizeHints), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoSetSizeHints},
    {sipName_DoSetWindowVariant, SIP_MLMETH_CAST(meth_wxTreeCtrl_DoSetWindowVariant), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_DoSetWindowVariant},
    {sipName_DoThaw, meth_wxTreeCtrl_DoThaw, METH_VARARGS, doc_wxTreeCtrl_DoThaw},
    {sipName_EditLabel, SIP_MLMETH_CAST(meth_wxTreeCtrl_EditLabel), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EditLabel},
    {sipName_EnableBellOnNoMatch, SIP_MLMETH_CAST(meth_wxTreeCtrl_EnableBellOnNoMatch), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EnableBellOnNoMatch},
    {sipName_EnableSystemTheme, SIP_MLMETH_CAST(meth_wxTreeCtrl_EnableSystemTheme), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EnableSystemTheme},
    {sipName_EnableVisibleFocus, SIP_MLMETH_CAST(meth_wxTreeCtrl_EnableVisibleFocus), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EnableVisibleFocus},
    {sipName_EndEditLabel, SIP_MLMETH_CAST(meth_wxTreeCtrl_EndEditLabel), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EndEditLabel},
    {sipName_EnsureVisible, SIP_MLMETH_CAST(meth_wxTreeCtrl_EnsureVisible), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_EnsureVisible},
    {sipName_Expand, SIP_MLMETH_CAST(meth_wxTreeCtrl_Expand), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_Expand},
    {sipName_ExpandAll, meth_wxTreeCtrl_ExpandAll, METH_VARARGS, doc_wxTreeCtrl_ExpandAll},
    {sipName_ExpandAllChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_ExpandAllChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_ExpandAllChildren},
    {sipName_GetBoundingRect, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetBoundingRect), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetBoundingRect},
    {sipName_GetChildrenCount, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetChildrenCount), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetChildrenCount},
    {sipName_GetClassDefaultAttributes, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetClassDefaultAttributes), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetClassDefaultAttributes},
    {sipName_GetClientAreaOrigin, meth_wxTreeCtrl_GetClientAreaOrigin, METH_VARARGS, doc_wxTreeCtrl_GetClientAreaOrigin},
    {sipName_GetCount, meth_wxTreeCtrl_GetCount, METH_VARARGS, doc_wxTreeCtrl_GetCount},
    {sipName_GetDefaultBorder, meth_wxTreeCtrl_GetDefaultBorder, METH_VARARGS, doc_wxTreeCtrl_GetDefaultBorder},
    {sipName_GetDefaultBorderForControl, meth_wxTreeCtrl_GetDefaultBorderForControl, METH_VARARGS, doc_wxTreeCtrl_GetDefaultBorderForControl},
    {sipName_GetEditControl, meth_wxTreeCtrl_GetEditControl, METH_VARARGS, doc_wxTreeCtrl_GetEditControl},
    {sipName_GetFirstChild, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetFirstChild), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetFirstChild},
    {sipName_GetFirstVisibleItem, meth_wxTreeCtrl_GetFirstVisibleItem, METH_VARARGS, doc_wxTreeCtrl_GetFirstVisibleItem},
    {sipName_GetFocusedItem, meth_wxTreeCtrl_GetFocusedItem, METH_VARARGS, doc_wxTreeCtrl_GetFocusedItem},
    {sipName_GetIndent, meth_wxTreeCtrl_GetIndent, METH_VARARGS, doc_wxTreeCtrl_GetIndent},
    {sipName_GetItemBackgroundColour, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemBackgroundColour), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemBackgroundColour},
    {sipName_GetItemData, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemData), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemData},
    {sipName_GetItemFont, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemFont), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemFont},
    {sipName_GetItemImage, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemImage), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemImage},
    {sipName_GetItemParent, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemParent), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemParent},
    {sipName_GetItemState, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemState), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemState},
    {sipName_GetItemText, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemText), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemText},
    {sipName_GetItemTextColour, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetItemTextColour), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetItemTextColour},
    {sipName_GetLastChild, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetLastChild), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetLastChild},
    {sipName_GetMainWindowOfCompositeControl, meth_wxTreeCtrl_GetMainWindowOfCompositeControl, METH_VARARGS, doc_wxTreeCtrl_GetMainWindowOfCompositeControl},
    {sipName_GetNextChild, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetNextChild), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetNextChild},
    {sipName_GetNextSibling, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetNextSibling), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetNextSibling},
    {sipName_GetNextVisible, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetNextVisible), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetNextVisible},
    {sipName_GetPrevSibling, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetPrevSibling), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetPrevSibling},
    {sipName_GetPrevVisible, SIP_MLMETH_CAST(meth_wxTreeCtrl_GetPrevVisible), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_GetPrevVisible},
    {sipName_GetQuickBestSize, meth_wxTreeCtrl_GetQuickBestSize, METH_VARARGS, doc_wxTreeCtrl_GetQuickBestSize},
    {sipName_GetRootItem, meth_wxTreeCtrl_GetRootItem, METH_VARARGS, doc_wxTreeCtrl_GetRootItem},
    {sipName_GetSelection, meth_wxTreeCtrl_GetSelection, METH_VARARGS, doc_wxTreeCtrl_GetSelection},
    {sipName_GetSelections, meth_wxTreeCtrl_GetSelections, METH_VARARGS, doc_wxTreeCtrl_GetSelections},
    {sipName_GetSpacing, meth_wxTreeCtrl_GetSpacing, METH_VARARGS, doc_wxTreeCtrl_GetSpacing},
    {sipName_GetStateImageList, meth_wxTreeCtrl_GetStateImageList, METH_VARARGS, doc_wxTreeCtrl_GetStateImageList},
    {sipName_GetValidator, meth_wxTreeCtrl_GetValidator, METH_VARARGS, doc_wxTreeCtrl_GetValidator},
    {sipName_HasTransparentBackground, meth_wxTreeCtrl_HasTransparentBackground, METH_VARARGS, doc_wxTreeCtrl_HasTransparentBackground},
    {sipName_HitTest, SIP_MLMETH_CAST(meth_wxTreeCtrl_HitTest), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_HitTest},
    {sipName_InformFirstDirection, SIP_MLMETH_CAST(meth_wxTreeCtrl_InformFirstDirection), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_InformFirstDirection},
    {sipName_InheritAttributes, meth_wxTreeCtrl_InheritAttributes, METH_VARARGS, doc_wxTreeCtrl_InheritAttributes},
    {sipName_InitDialog, meth_wxTreeCtrl_InitDialog, METH_VARARGS, doc_wxTreeCtrl_InitDialog},
    {sipName_InsertItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_InsertItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_InsertItem},
    {sipName_IsBold, SIP_MLMETH_CAST(meth_wxTreeCtrl_IsBold), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_IsBold},
    {sipName_IsEmpty, meth_wxTreeCtrl_IsEmpty, METH_VARARGS, doc_wxTreeCtrl_IsEmpty},
    {sipName_IsExpanded, SIP_MLMETH_CAST(meth_wxTreeCtrl_IsExpanded), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_IsExpanded},
    {sipName_IsSelected, SIP_MLMETH_CAST(meth_wxTreeCtrl_IsSelected), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_IsSelected},
    {sipName_IsVisible, SIP_MLMETH_CAST(meth_wxTreeCtrl_IsVisible), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_IsVisible},
    {sipName_ItemHasChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_ItemHasChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_ItemHasChildren},
    {sipName_OnCompareItems, SIP_MLMETH_CAST(meth_wxTreeCtrl_OnCompareItems), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_OnCompareItems},
    {sipName_OnInternalIdle, meth_wxTreeCtrl_OnInternalIdle, METH_VARARGS, doc_wxTreeCtrl_OnInternalIdle},
    {sipName_PrependItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_PrependItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_PrependItem},
    {sipName_ProcessEvent, SIP_MLMETH_CAST(meth_wxTreeCtrl_ProcessEvent), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_ProcessEvent},
    {sipName_RemoveChild, SIP_MLMETH_CAST(meth_wxTreeCtrl_RemoveChild), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_RemoveChild},
    {sipName_ScrollTo, SIP_MLMETH_CAST(meth_wxTreeCtrl_ScrollTo), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_ScrollTo},
    {sipName_SelectChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_SelectChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SelectChildren},
    {sipName_SelectItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_SelectItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SelectItem},
    {sipName_SendDestroyEvent, meth_wxTreeCtrl_SendDestroyEvent, METH_VARARGS, SIP_NULLPTR},
    {sipName_SetCanFocus, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetCanFocus), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetCanFocus},
    {sipName_SetFocusedItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetFocusedItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetFocusedItem},
    {sipName_SetIndent, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetIndent), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetIndent},
    {sipName_SetItemBackgroundColour, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemBackgroundColour), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemBackgroundColour},
    {sipName_SetItemBold, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemBold), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemBold},
    {sipName_SetItemData, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemData), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemData},
    {sipName_SetItemDropHighlight, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemDropHighlight), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemDropHighlight},
    {sipName_SetItemFont, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemFont), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemFont},
    {sipName_SetItemHasChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemHasChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemHasChildren},
    {sipName_SetItemImage, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemImage), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemImage},
    {sipName_SetItemState, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemState), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemState},
    {sipName_SetItemText, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemText), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemText},
    {sipName_SetItemTextColour, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetItemTextColour), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetItemTextColour},
    {sipName_SetQuickBestSize, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetQuickBestSize), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetQuickBestSize},
    {sipName_SetSpacing, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetSpacing), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetSpacing},
    {sipName_SetStateImageList, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetStateImageList), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetStateImageList},
    {sipName_SetValidator, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetValidator), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetValidator},
    {sipName_SetWindowStyle, SIP_MLMETH_CAST(meth_wxTreeCtrl_SetWindowStyle), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SetWindowStyle},
    {sipName_ShouldInheritColours, meth_wxTreeCtrl_ShouldInheritColours, METH_VARARGS, doc_wxTreeCtrl_ShouldInheritColours},
    {sipName_SortChildren, SIP_MLMETH_CAST(meth_wxTreeCtrl_SortChildren), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_SortChildren},
    {sipName_Toggle, SIP_MLMETH_CAST(meth_wxTreeCtrl_Toggle), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_Toggle},
    {sipName_ToggleItemSelection, SIP_MLMETH_CAST(meth_wxTreeCtrl_ToggleItemSelection), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_ToggleItemSelection},
    {sipName_TransferDataFromWindow, meth_wxTreeCtrl_TransferDataFromWindow, METH_VARARGS, doc_wxTreeCtrl_TransferDataFromWindow},
    {sipName_TransferDataToWindow, meth_wxTreeCtrl_TransferDataToWindow, METH_VARARGS, doc_wxTreeCtrl_TransferDataToWindow},
    {sipName_TryAfter, SIP_MLMETH_CAST(meth_wxTreeCtrl_TryAfter), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_TryAfter},
    {sipName_TryBefore, SIP_MLMETH_CAST(meth_wxTreeCtrl_TryBefore), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_TryBefore},
    {sipName_Unselect, meth_wxTreeCtrl_Unselect, METH_VARARGS, doc_wxTreeCtrl_Unselect},
    {sipName_UnselectAll, meth_wxTreeCtrl_UnselectAll, METH_VARARGS, doc_wxTreeCtrl_UnselectAll},
    {sipName_UnselectItem, SIP_MLMETH_CAST(meth_wxTreeCtrl_UnselectItem), METH_VARARGS|METH_KEYWORDS, doc_wxTreeCtrl_UnselectItem},
    {sipName_Validate, meth_wxTreeCtrl_Validate, METH_VARARGS, doc_wxTreeCtrl_Validate}
};

sipVariableDef variables_wxTreeCtrl[] = {
    {PropertyVariable, sipName_StateImageList, &methods_wxTreeCtrl[71], &methods_wxTreeCtrl[109], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Spacing, &methods_wxTreeCtrl[70], &methods_wxTreeCtrl[108], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Selections, &methods_wxTreeCtrl[69], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Selection, &methods_wxTreeCtrl[68], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_RootItem, &methods_wxTreeCtrl[67], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_QuickBestSize, &methods_wxTreeCtrl[66], &methods_wxTreeCtrl[107], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Indent, &methods_wxTreeCtrl[50], &methods_wxTreeCtrl[96], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_FocusedItem, &methods_wxTreeCtrl[49], &methods_wxTreeCtrl[95], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_FirstVisibleItem, &methods_wxTreeCtrl[48], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_EditControl, &methods_wxTreeCtrl[46], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Count, &methods_wxTreeCtrl[43], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_BoundingRect, &methods_wxTreeCtrl[39], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxTreeCtrl, "TreeCtrl() -> None\n"
"TreeCtrl(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=TR_DEFAULT_STYLE, validator=DefaultValidator, name=TreeCtrlNameStr) -> None\n"
"\n"
"A tree control presents information as a hierarchy, with items that\n"
"may be expanded to show further items.");


sipClassTypeDef sipTypeDef__core_wxTreeCtrl = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_wxTreeCtrl,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_TreeCtrl,
        {0, 0, 1},
        124, methods_wxTreeCtrl,
        0, SIP_NULLPTR,
        12, variables_wxTreeCtrl,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxTreeCtrl,
    -1,
    -1,
    supers_wxTreeCtrl,
    SIP_NULLPTR,
    init_type_wxTreeCtrl,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxTreeCtrl,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    release_wxTreeCtrl,
    cast_wxTreeCtrl,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    sizeof (::wxTreeCtrl),
};