/*
 * 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/listbox.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/font.h>
        #include <wx/colour.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>
    wxArrayInt* _wxListBox_GetSelections(const wxListBox* self)
    {
        wxArrayInt* array = new wxArrayInt;
        self->GetSelections(*array);
        return array;
    }
    void _wxListBox_MSWSetTabStops(wxListBox* self, const wxArrayInt* tabStops)
    {
        #ifdef __WXMSW__
            // TODO:
            //self->MSWSetTabStops(*tabStops);
        #endif
    }
    void _wxListBox_SetItemForegroundColour(wxListBox* self, int item, const wxColour* c)
    {
        #ifdef __WXMSW__
             if (self->GetWindowStyle() & wxLB_OWNERDRAW)
                 self->GetItem(item)->SetTextColour(*c);
        #endif
    }
    void _wxListBox_SetItemBackgroundColour(wxListBox* self, int item, const wxColour* c)
    {
        #ifdef __WXMSW__
             if (self->GetWindowStyle() & wxLB_OWNERDRAW)
                 self->GetItem(item)->SetBackgroundColour(*c);
        #endif
    }
    void _wxListBox_SetItemFont(wxListBox* self, int item, const wxFont* f)
    {
        #ifdef __WXMSW__
             if (self->GetWindowStyle() & wxLB_OWNERDRAW)
                 self->GetItem(item)->SetFont(*f);
        #endif
    }


class sipwxListBox : public ::wxListBox
{
public:
    sipwxListBox();
    sipwxListBox(::wxWindow*, ::wxWindowID, const ::wxPoint&, const ::wxSize&, const ::wxArrayString&, long, const ::wxValidator&, const ::wxString&);
    virtual ~sipwxListBox();

    /*
     * 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 GetSelections(::wxArrayInt&) const SIP_OVERRIDE;
    ::wxString GetStringSelection() const SIP_OVERRIDE;
    int GetSelection() const SIP_OVERRIDE;
    void SetSelection(int) SIP_OVERRIDE;
    int FindString(const ::wxString&, bool) const SIP_OVERRIDE;
    void SetString(uint, const ::wxString&) SIP_OVERRIDE;
    ::wxString GetString(uint) const SIP_OVERRIDE;
    uint GetCount() const 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:
    sipwxListBox(const sipwxListBox &);
    sipwxListBox &operator = (const sipwxListBox &);

    char sipPyMethods[47];
};

sipwxListBox::sipwxListBox(): ::wxListBox(), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

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

int sipwxListBox::GetSelections(::wxArrayInt& aSelections) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::GetSelections(aSelections);

    extern int sipVH__core_164(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxArrayInt&);

    return sipVH__core_164(sipGILState, 0, sipPySelf, sipMeth, aSelections);
}

::wxString sipwxListBox::GetStringSelection() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::GetStringSelection();

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

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

int sipwxListBox::GetSelection() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::GetSelection();

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

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

void sipwxListBox::SetSelection(int n)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::SetSelection(n);
        return;
    }

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

    sipVH__core_113(sipGILState, 0, sipPySelf, sipMeth, n);
}

int sipwxListBox::FindString(const ::wxString& string, bool caseSensitive) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::FindString(string, caseSensitive);

    extern int sipVH__core_154(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxString&, bool);

    return sipVH__core_154(sipGILState, 0, sipPySelf, sipMeth, string, caseSensitive);
}

void sipwxListBox::SetString(uint n, const ::wxString& string)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::SetString(n, string);
        return;
    }

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

    sipVH__core_153(sipGILState, 0, sipPySelf, sipMeth, n, string);
}

::wxString sipwxListBox::GetString(uint n) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::GetString(n);

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

    return sipVH__core_152(sipGILState, 0, sipPySelf, sipMeth, n);
}

uint sipwxListBox::GetCount() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return ::wxListBox::GetCount();

    extern uint sipVH__core_151(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoSetSizeHints(int minW, int minH, int maxW, int maxH, int incW, int incH)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoSetClientSize(int width, int height)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoGetClientSize(int*width, int*height) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoGetSize(int*width, int*height) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoGetPosition(int*x, int*y) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
        ::wxListBox::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 sipwxListBox::DoEnable(bool enable)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    if (!sipMeth)
    {
        ::wxListBox::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* sipwxListBox::GetValidator()
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    if (!sipMeth)
        return ::wxListBox::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 sipwxListBox::EnableVisibleFocus(bool enabled)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

void sipwxListBox::sipProtectVirt_DoEnable(bool sipSelfWasArg, bool enable)
{
    (sipSelfWasArg ? ::wxListBox::DoEnable(enable) : DoEnable(enable));
}

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

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

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

::wxSize sipwxListBox::sipProtectVirt_DoGetBestSize(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxListBox::DoGetBestSize() : DoGetBestSize());
}

::wxSize sipwxListBox::sipProtectVirt_DoGetBestClientSize(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxListBox::DoGetBestClientSize() : DoGetBestClientSize());
}

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

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

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

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

void sipwxListBox::sipProtectVirt_DoSetWindowVariant(bool sipSelfWasArg, ::wxWindowVariant variant)
{
    (sipSelfWasArg ? ::wxListBox::DoSetWindowVariant(variant) : DoSetWindowVariant(variant));
}

::wxBorder sipwxListBox::sipProtectVirt_GetDefaultBorder(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxListBox::GetDefaultBorder() : GetDefaultBorder());
}

::wxBorder sipwxListBox::sipProtectVirt_GetDefaultBorderForControl(bool sipSelfWasArg) const
{
    return (sipSelfWasArg ? ::wxListBox::GetDefaultBorderForControl() : GetDefaultBorderForControl());
}

void sipwxListBox::sipProtectVirt_DoFreeze(bool sipSelfWasArg)
{
    (sipSelfWasArg ? ::wxListBox::DoFreeze() : DoFreeze());
}

void sipwxListBox::sipProtectVirt_DoThaw(bool sipSelfWasArg)
{
    (sipSelfWasArg ? ::wxListBox::DoThaw() : DoThaw());
}

bool sipwxListBox::sipProtectVirt_HasTransparentBackground(bool sipSelfWasArg)
{
    return (sipSelfWasArg ? ::wxListBox::HasTransparentBackground() : HasTransparentBackground());
}

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

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


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

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

    {
        sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_SendDestroyEvent, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_Create, "Create(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, choices=[], style=0, validator=DefaultValidator, name=ListBoxNameStr) -> bool\n"
"\n"
"Creates the listbox for two-step construction.");

extern "C" {static PyObject *meth_wxListBox_Create(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxListBox_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;
        const ::wxArrayString& choicesdef = wxArrayString();
        const ::wxArrayString* choices = &choicesdef;
        int choicesState = 0;
        long style = 0;
        const ::wxValidator& validatordef = wxDefaultValidator;
        const ::wxValidator* validator = &validatordef;
        const ::wxString& namedef = wxListBoxNameStr;
        const ::wxString* name = &namedef;
        int nameState = 0;
        sipWrapper *sipOwner = SIP_NULLPTR;
        ::wxListBox *sipCpp;

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

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->Create(parent, id, *pos, *size, *choices, 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< ::wxArrayString *>(choices), sipType_wxArrayString, choicesState);
            sipReleaseType(const_cast< ::wxString *>(name), sipType_wxString, nameState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_Create, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_Deselect, "Deselect(n) -> None\n"
"\n"
"Deselects an item in the list box.");

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

    {
        int n;
        ::wxListBox *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            sipCpp->Deselect(n);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_Deselect, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetSelection, "SetSelection(n) -> None\n"
"\n"
"Sets the selection to the given item n or removes the selection\n"
"entirely if n == wxNOT_FOUND.");

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

    {
        int n;
        ::wxListBox *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxListBox::SetSelection(n) : sipCpp->SetSelection(n));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetSelection, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetSelection, "GetSelection() -> int\n"
"\n"
"Returns the index of the selected item or wxNOT_FOUND if no item is\n"
"selected.");

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxListBox::GetSelection() : sipCpp->GetSelection());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetSelection, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetStringSelection, "SetStringSelection(s, select) -> bool\n"
"SetStringSelection(s) -> bool\n"
"");

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

    {
        const ::wxString* s;
        int sState = 0;
        bool select;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1b", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxString, &s, &sState, &select))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->SetStringSelection(*s, select);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(s), sipType_wxString, sState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    {
        const ::wxString* s;
        int sState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxString, &s, &sState))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->SetStringSelection(*s);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(s), sipType_wxString, sState);

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetStringSelection, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetSelections, "GetSelections() -> List[int]\n"
"\n"
"Fill an array of ints with the positions of the currently selected\n"
"items.\n"
"");

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

    {
        const ::wxListBox *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxListBox, &sipCpp))
        {
            ::wxArrayInt*sipRes = 0;
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        sipRes = _wxListBox_GetSelections(sipCpp);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

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

    {
        ::wxArrayInt* aSelections;
        int aSelectionsState = 0;
        const ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxArrayInt, &aSelections, &aSelectionsState))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxListBox::GetSelections(*aSelections) : sipCpp->GetSelections(*aSelections));
            Py_END_ALLOW_THREADS
            sipReleaseType(aSelections, sipType_wxArrayInt, aSelectionsState);

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetSelections, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_HitTest, "HitTest(point) -> int\n"
"HitTest(x, y) -> int\n"
"\n"
"Returns the item located at point, or wxNOT_FOUND if there is no item\n"
"located at point.\n"
"");

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

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

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxPoint, &point, &pointState))
        {
            int sipRes;

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    {
        int x;
        int y;
        const ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bii", &sipSelf, sipType_wxListBox, &sipCpp, &x, &y))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->HitTest(x, y);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_HitTest, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_InsertItems, "InsertItems(items, pos) -> None\n"
"\n"
"Insert the given number of strings before the specified position.");

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

    {
        const ::wxArrayString* items;
        int itemsState = 0;
        uint pos;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1u", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxArrayString, &items, &itemsState, &pos))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->InsertItems(*items, pos);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxArrayString *>(items), sipType_wxArrayString, itemsState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_InsertItems, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_IsSelected, "IsSelected(n) -> bool\n"
"\n"
"Determines whether an item is selected.");

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

    {
        int n;
        const ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxListBox, &sipCpp, &n))
        {
            bool sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsSelected(n);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_IsSelected, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetFirstItem, "SetFirstItem(n) -> None\n"
"SetFirstItem(string) -> None\n"
"\n"
"Set the specified item to be the first visible item.\n"
"");

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

    {
        int n;
        ::wxListBox *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetFirstItem(n);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    {
        const ::wxString* string;
        int stringState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxString, &string, &stringState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp->SetFirstItem(*string);
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(string), sipType_wxString, stringState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetFirstItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_EnsureVisible, "EnsureVisible(n) -> None\n"
"\n"
"Ensure that the item with the given index is currently shown.");

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

    {
        int n;
        ::wxListBox *sipCpp;

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

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

            Py_BEGIN_ALLOW_THREADS
            sipCpp->EnsureVisible(n);
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_EnsureVisible, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_IsSorted, "IsSorted() -> bool\n"
"\n"
"Return true if the listbox has wxLB_SORT style.");

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->IsSorted();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_IsSorted, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetCountPerPage, "GetCountPerPage() -> int\n"
"\n"
"Return the number of items that can fit vertically in the visible area\n"
"of the listbox.");

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetCountPerPage();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetCountPerPage, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetTopItem, "GetTopItem() -> int\n"
"\n"
"Return the index of the topmost visible item.");

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->GetTopItem();
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetTopItem, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_MSWSetTabStops, "MSWSetTabStops(tabStops) -> None");

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

    {
        const ::wxArrayInt* tabStops;
        int tabStopsState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxArrayInt, &tabStops, &tabStopsState))
        {
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        _wxListBox_MSWSetTabStops(sipCpp, tabStops);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;
            sipReleaseType(const_cast< ::wxArrayInt *>(tabStops), sipType_wxArrayInt, tabStopsState);

            if (sipIsErr)
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_MSWSetTabStops, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxListBox::GetCount() : sipCpp->GetCount());
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromUnsignedLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetCount, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetString, "GetString(n) -> str\n"
"\n"
"Returns the label of the item with the given index.");

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

    {
        uint n;
        const ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bu", &sipSelf, sipType_wxListBox, &sipCpp, &n))
        {
            ::wxString*sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = new ::wxString((sipSelfWasArg ? sipCpp->::wxListBox::GetString(n) : sipCpp->GetString(n)));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetString, "SetString(n, string) -> None\n"
"\n"
"Sets the label for the given item.");

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

    {
        uint n;
        const ::wxString* string;
        int stringState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BuJ1", &sipSelf, sipType_wxListBox, &sipCpp, &n, sipType_wxString, &string, &stringState))
        {
            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            (sipSelfWasArg ? sipCpp->::wxListBox::SetString(n, *string) : sipCpp->SetString(n, *string));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(string), sipType_wxString, stringState);

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_FindString, "FindString(string, caseSensitive=False) -> int\n"
"\n"
"Finds an item whose label matches the given string.");

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

    {
        const ::wxString* string;
        int stringState = 0;
        bool caseSensitive = 0;
        const ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1|b", &sipSelf, sipType_wxListBox, &sipCpp, sipType_wxString, &string, &stringState, &caseSensitive))
        {
            int sipRes;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxListBox::FindString(*string, caseSensitive) : sipCpp->FindString(*string, caseSensitive));
            Py_END_ALLOW_THREADS
            sipReleaseType(const_cast< ::wxString *>(string), sipType_wxString, stringState);

            if (PyErr_Occurred())
                return 0;

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_FindString, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetItemForegroundColour, "SetItemForegroundColour(item, c) -> None\n"
"\n"
"Set the foreground colour of an item in the ListBox.\n"
"Only valid on MSW and if the ``wx.LB_OWNERDRAW`` flag is set.");

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

    {
        int item;
        const ::wxColour* c;
        int cState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BiJ0", &sipSelf, sipType_wxListBox, &sipCpp, &item, sipType_wxColour, &c, &cState))
        {
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        _wxListBox_SetItemForegroundColour(sipCpp, item, c);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;
            sipReleaseType(const_cast< ::wxColour *>(c), sipType_wxColour, cState);

            if (sipIsErr)
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetItemForegroundColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetItemBackgroundColour, "SetItemBackgroundColour(item, c) -> None\n"
"\n"
"Set the background colour of an item in the ListBox.\n"
"Only valid on MSW and if the ``wx.LB_OWNERDRAW`` flag is set.");

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

    {
        int item;
        const ::wxColour* c;
        int cState = 0;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BiJ0", &sipSelf, sipType_wxListBox, &sipCpp, &item, sipType_wxColour, &c, &cState))
        {
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        _wxListBox_SetItemBackgroundColour(sipCpp, item, c);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;
            sipReleaseType(const_cast< ::wxColour *>(c), sipType_wxColour, cState);

            if (sipIsErr)
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetItemBackgroundColour, SIP_NULLPTR);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_SetItemFont, "SetItemFont(item, f) -> None\n"
"\n"
"Set the font of an item in the ListBox.\n"
"Only valid on MSW and if the ``wx.LB_OWNERDRAW`` flag is set.");

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

    {
        int item;
        const ::wxFont* f;
        ::wxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BiJ8", &sipSelf, sipType_wxListBox, &sipCpp, &item, sipType_wxFont, &f))
        {
            int sipIsErr = 0;
        PyErr_Clear();
        Py_BEGIN_ALLOW_THREADS
        _wxListBox_SetItemFont(sipCpp, item, f);
        Py_END_ALLOW_THREADS
        if (PyErr_Occurred()) sipIsErr = 1;

            if (sipIsErr)
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetItemFont, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetClientAreaOrigin, doc_wxListBox_GetClientAreaOrigin);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_Validate, doc_wxListBox_Validate);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_TransferDataToWindow, doc_wxListBox_TransferDataToWindow);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_TransferDataFromWindow, doc_wxListBox_TransferDataFromWindow);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_InitDialog, doc_wxListBox_InitDialog);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_AcceptsFocus, doc_wxListBox_AcceptsFocus);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_AcceptsFocusRecursively, doc_wxListBox_AcceptsFocusRecursively);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_AcceptsFocusFromKeyboard, doc_wxListBox_AcceptsFocusFromKeyboard);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxWindowBase* child;
        ::wxListBox *sipCpp;

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

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_AddChild, doc_wxListBox_AddChild);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxWindowBase* child;
        ::wxListBox *sipCpp;

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

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_RemoveChild, doc_wxListBox_RemoveChild);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_InheritAttributes, doc_wxListBox_InheritAttributes);

    return SIP_NULLPTR;
}


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

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

    {
        const ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_ShouldInheritColours, doc_wxListBox_ShouldInheritColours);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_OnInternalIdle, doc_wxListBox_OnInternalIdle);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetMainWindowOfCompositeControl, doc_wxListBox_GetMainWindowOfCompositeControl);

    return SIP_NULLPTR;
}


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

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

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

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

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipRes = (sipSelfWasArg ? sipCpp->::wxListBox::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_ListBox, sipName_InformFirstDirection, doc_wxListBox_InformFirstDirection);

    return SIP_NULLPTR;
}


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

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

    {
        bool canFocus;
        ::wxListBox *sipCpp;

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

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetCanFocus, doc_wxListBox_SetCanFocus);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_Destroy, doc_wxListBox_Destroy);

    return SIP_NULLPTR;
}


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

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

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

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

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_SetValidator, doc_wxListBox_SetValidator);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxListBox *sipCpp;

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

            PyErr_Clear();

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

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetValidator, doc_wxListBox_GetValidator);

    return SIP_NULLPTR;
}


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

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

    {
        bool enabled;
        ::wxListBox *sipCpp;

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

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

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

            if (PyErr_Occurred())
                return 0;

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_EnableVisibleFocus, doc_wxListBox_EnableVisibleFocus);

    return SIP_NULLPTR;
}


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

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

    {
        ::wxEvent* event;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_ProcessEvent, doc_wxListBox_ProcessEvent);

    return SIP_NULLPTR;
}


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

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

    {
        bool enable;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bb", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoEnable, doc_wxListBox_DoEnable);

    return SIP_NULLPTR;
}


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

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

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoGetPosition, doc_wxListBox_DoGetPosition);

    return SIP_NULLPTR;
}


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

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

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoGetSize, doc_wxListBox_DoGetSize);

    return SIP_NULLPTR;
}


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

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

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoGetClientSize, doc_wxListBox_DoGetClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoGetBestSize, "DoGetBestSize(self) -> Size");

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

    {
        const sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoGetBestSize, doc_wxListBox_DoGetBestSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoGetBestClientSize, "DoGetBestClientSize(self) -> Size");

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

    {
        const sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoGetBestClientSize, doc_wxListBox_DoGetBestClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoSetSize, "DoSetSize(self, x: int, y: int, width: int, height: int, sizeFlags: int)");

extern "C" {static PyObject *meth_wxListBox_DoSetSize(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxListBox_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;
        sipwxListBox *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_wxListBox, &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_ListBox, sipName_DoSetSize, doc_wxListBox_DoSetSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoSetClientSize, "DoSetClientSize(self, width: int, height: int)");

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

    {
        int width;
        int height;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bii", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoSetClientSize, doc_wxListBox_DoSetClientSize);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoSetSizeHints, "DoSetSizeHints(self, minW: int, minH: int, maxW: int, maxH: int, incW: int, incH: int)");

extern "C" {static PyObject *meth_wxListBox_DoSetSizeHints(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxListBox_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;
        sipwxListBox *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_wxListBox, &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_ListBox, sipName_DoSetSizeHints, doc_wxListBox_DoSetSizeHints);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoMoveWindow, "DoMoveWindow(self, x: int, y: int, width: int, height: int)");

extern "C" {static PyObject *meth_wxListBox_DoMoveWindow(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxListBox_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;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Biiii", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoMoveWindow, doc_wxListBox_DoMoveWindow);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoSetWindowVariant, "DoSetWindowVariant(self, variant: WindowVariant)");

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

    {
        ::wxWindowVariant variant;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BE", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoSetWindowVariant, doc_wxListBox_DoSetWindowVariant);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetDefaultBorder, "GetDefaultBorder(self) -> Border");

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

    {
        const sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_GetDefaultBorder, doc_wxListBox_GetDefaultBorder);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetDefaultBorderForControl, "GetDefaultBorderForControl(self) -> Border");

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

    {
        const sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_GetDefaultBorderForControl, doc_wxListBox_GetDefaultBorderForControl);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoFreeze, "DoFreeze(self)");

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

    {
        sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoFreeze, doc_wxListBox_DoFreeze);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_DoThaw, "DoThaw(self)");

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

    {
        sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_DoThaw, doc_wxListBox_DoThaw);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_HasTransparentBackground, "HasTransparentBackground(self) -> bool");

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

    {
        sipwxListBox *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_HasTransparentBackground, doc_wxListBox_HasTransparentBackground);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_TryBefore, "TryBefore(self, event: Event) -> bool");

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

    {
        ::wxEvent* event;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_TryBefore, doc_wxListBox_TryBefore);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_TryAfter, "TryAfter(self, event: Event) -> bool");

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

    {
        ::wxEvent* event;
        sipwxListBox *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9", &sipSelf, sipType_wxListBox, &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_ListBox, sipName_TryAfter, doc_wxListBox_TryAfter);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_wxListBox_GetClassDefaultAttributes, "GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes");

extern "C" {static PyObject *meth_wxListBox_GetClassDefaultAttributes(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_wxListBox_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(::wxListBox::GetClassDefaultAttributes(variant));
            Py_END_ALLOW_THREADS

            if (PyErr_Occurred())
                return 0;

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

    sipNoMethod(sipParseErr, sipName_ListBox, sipName_GetClassDefaultAttributes, SIP_NULLPTR);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_wxListBox)
        return sipCppV;

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

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

    return SIP_NULLPTR;
}


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

    if (sipState & SIP_DERIVED_CLASS)
        delete reinterpret_cast<sipwxListBox *>(sipCppV);
    else
        delete reinterpret_cast< ::wxListBox *>(sipCppV);

    Py_END_ALLOW_THREADS
}


extern "C" {static void *array_wxListBox(Py_ssize_t);}
static void *array_wxListBox(Py_ssize_t sipNrElem)
{
    return new ::wxListBox[sipNrElem];
}


extern "C" {static void array_delete_wxListBox(void *);}
static void array_delete_wxListBox(void *sipCpp)
{
    delete[] reinterpret_cast< ::wxListBox *>(sipCpp);
}


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

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


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

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

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxListBox();
            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;
        const ::wxArrayString& choicesdef = wxArrayString();
        const ::wxArrayString* choices = &choicesdef;
        int choicesState = 0;
        long style = 0;
        const ::wxValidator& validatordef = wxDefaultValidator;
        const ::wxValidator* validator = &validatordef;
        const ::wxString& namedef = wxListBoxNameStr;
        const ::wxString* name = &namedef;
        int nameState = 0;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "JH|iJ1J1J1lJ9J1", sipType_wxWindow, &parent, sipOwner, &id, sipType_wxPoint, &pos, &posState, sipType_wxSize, &size, &sizeState, sipType_wxArrayString, &choices, &choicesState, &style, sipType_wxValidator, &validator, sipType_wxString, &name, &nameState))
        {
        if (!wxPyCheckForApp()) return NULL;

            PyErr_Clear();

            Py_BEGIN_ALLOW_THREADS
            sipCpp = new sipwxListBox(parent, id, *pos, *size, *choices, 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< ::wxArrayString *>(choices), sipType_wxArrayString, choicesState);
            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_wxListBox[] = {{97, 255, 0}, {299, 255, 1}};


static PyMethodDef methods_wxListBox[] = {
    {sipName_AcceptsFocus, meth_wxListBox_AcceptsFocus, METH_VARARGS, doc_wxListBox_AcceptsFocus},
    {sipName_AcceptsFocusFromKeyboard, meth_wxListBox_AcceptsFocusFromKeyboard, METH_VARARGS, doc_wxListBox_AcceptsFocusFromKeyboard},
    {sipName_AcceptsFocusRecursively, meth_wxListBox_AcceptsFocusRecursively, METH_VARARGS, doc_wxListBox_AcceptsFocusRecursively},
    {sipName_AddChild, SIP_MLMETH_CAST(meth_wxListBox_AddChild), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_AddChild},
    {sipName_Create, SIP_MLMETH_CAST(meth_wxListBox_Create), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_Create},
    {sipName_Deselect, SIP_MLMETH_CAST(meth_wxListBox_Deselect), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_Deselect},
    {sipName_Destroy, meth_wxListBox_Destroy, METH_VARARGS, doc_wxListBox_Destroy},
    {sipName_DoEnable, SIP_MLMETH_CAST(meth_wxListBox_DoEnable), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoEnable},
    {sipName_DoFreeze, meth_wxListBox_DoFreeze, METH_VARARGS, doc_wxListBox_DoFreeze},
    {sipName_DoGetBestClientSize, meth_wxListBox_DoGetBestClientSize, METH_VARARGS, doc_wxListBox_DoGetBestClientSize},
    {sipName_DoGetBestSize, meth_wxListBox_DoGetBestSize, METH_VARARGS, doc_wxListBox_DoGetBestSize},
    {sipName_DoGetClientSize, SIP_MLMETH_CAST(meth_wxListBox_DoGetClientSize), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoGetClientSize},
    {sipName_DoGetPosition, SIP_MLMETH_CAST(meth_wxListBox_DoGetPosition), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoGetPosition},
    {sipName_DoGetSize, SIP_MLMETH_CAST(meth_wxListBox_DoGetSize), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoGetSize},
    {sipName_DoMoveWindow, SIP_MLMETH_CAST(meth_wxListBox_DoMoveWindow), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoMoveWindow},
    {sipName_DoSetClientSize, SIP_MLMETH_CAST(meth_wxListBox_DoSetClientSize), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoSetClientSize},
    {sipName_DoSetSize, SIP_MLMETH_CAST(meth_wxListBox_DoSetSize), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoSetSize},
    {sipName_DoSetSizeHints, SIP_MLMETH_CAST(meth_wxListBox_DoSetSizeHints), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoSetSizeHints},
    {sipName_DoSetWindowVariant, SIP_MLMETH_CAST(meth_wxListBox_DoSetWindowVariant), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_DoSetWindowVariant},
    {sipName_DoThaw, meth_wxListBox_DoThaw, METH_VARARGS, doc_wxListBox_DoThaw},
    {sipName_EnableVisibleFocus, SIP_MLMETH_CAST(meth_wxListBox_EnableVisibleFocus), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_EnableVisibleFocus},
    {sipName_EnsureVisible, SIP_MLMETH_CAST(meth_wxListBox_EnsureVisible), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_EnsureVisible},
    {sipName_FindString, SIP_MLMETH_CAST(meth_wxListBox_FindString), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_FindString},
    {sipName_GetClassDefaultAttributes, SIP_MLMETH_CAST(meth_wxListBox_GetClassDefaultAttributes), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_GetClassDefaultAttributes},
    {sipName_GetClientAreaOrigin, meth_wxListBox_GetClientAreaOrigin, METH_VARARGS, doc_wxListBox_GetClientAreaOrigin},
    {sipName_GetCount, meth_wxListBox_GetCount, METH_VARARGS, doc_wxListBox_GetCount},
    {sipName_GetCountPerPage, meth_wxListBox_GetCountPerPage, METH_VARARGS, doc_wxListBox_GetCountPerPage},
    {sipName_GetDefaultBorder, meth_wxListBox_GetDefaultBorder, METH_VARARGS, doc_wxListBox_GetDefaultBorder},
    {sipName_GetDefaultBorderForControl, meth_wxListBox_GetDefaultBorderForControl, METH_VARARGS, doc_wxListBox_GetDefaultBorderForControl},
    {sipName_GetMainWindowOfCompositeControl, meth_wxListBox_GetMainWindowOfCompositeControl, METH_VARARGS, doc_wxListBox_GetMainWindowOfCompositeControl},
    {sipName_GetSelection, meth_wxListBox_GetSelection, METH_VARARGS, doc_wxListBox_GetSelection},
    {sipName_GetSelections, SIP_MLMETH_CAST(meth_wxListBox_GetSelections), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_GetSelections},
    {sipName_GetString, SIP_MLMETH_CAST(meth_wxListBox_GetString), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_GetString},
    {sipName_GetTopItem, meth_wxListBox_GetTopItem, METH_VARARGS, doc_wxListBox_GetTopItem},
    {sipName_GetValidator, meth_wxListBox_GetValidator, METH_VARARGS, doc_wxListBox_GetValidator},
    {sipName_HasTransparentBackground, meth_wxListBox_HasTransparentBackground, METH_VARARGS, doc_wxListBox_HasTransparentBackground},
    {sipName_HitTest, SIP_MLMETH_CAST(meth_wxListBox_HitTest), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_HitTest},
    {sipName_InformFirstDirection, SIP_MLMETH_CAST(meth_wxListBox_InformFirstDirection), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_InformFirstDirection},
    {sipName_InheritAttributes, meth_wxListBox_InheritAttributes, METH_VARARGS, doc_wxListBox_InheritAttributes},
    {sipName_InitDialog, meth_wxListBox_InitDialog, METH_VARARGS, doc_wxListBox_InitDialog},
    {sipName_InsertItems, SIP_MLMETH_CAST(meth_wxListBox_InsertItems), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_InsertItems},
    {sipName_IsSelected, SIP_MLMETH_CAST(meth_wxListBox_IsSelected), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_IsSelected},
    {sipName_IsSorted, meth_wxListBox_IsSorted, METH_VARARGS, doc_wxListBox_IsSorted},
    {sipName_MSWSetTabStops, SIP_MLMETH_CAST(meth_wxListBox_MSWSetTabStops), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_MSWSetTabStops},
    {sipName_OnInternalIdle, meth_wxListBox_OnInternalIdle, METH_VARARGS, doc_wxListBox_OnInternalIdle},
    {sipName_ProcessEvent, SIP_MLMETH_CAST(meth_wxListBox_ProcessEvent), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_ProcessEvent},
    {sipName_RemoveChild, SIP_MLMETH_CAST(meth_wxListBox_RemoveChild), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_RemoveChild},
    {sipName_SendDestroyEvent, meth_wxListBox_SendDestroyEvent, METH_VARARGS, SIP_NULLPTR},
    {sipName_SetCanFocus, SIP_MLMETH_CAST(meth_wxListBox_SetCanFocus), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetCanFocus},
    {sipName_SetFirstItem, SIP_MLMETH_CAST(meth_wxListBox_SetFirstItem), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetFirstItem},
    {sipName_SetItemBackgroundColour, SIP_MLMETH_CAST(meth_wxListBox_SetItemBackgroundColour), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetItemBackgroundColour},
    {sipName_SetItemFont, SIP_MLMETH_CAST(meth_wxListBox_SetItemFont), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetItemFont},
    {sipName_SetItemForegroundColour, SIP_MLMETH_CAST(meth_wxListBox_SetItemForegroundColour), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetItemForegroundColour},
    {sipName_SetSelection, SIP_MLMETH_CAST(meth_wxListBox_SetSelection), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetSelection},
    {sipName_SetString, SIP_MLMETH_CAST(meth_wxListBox_SetString), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetString},
    {sipName_SetStringSelection, SIP_MLMETH_CAST(meth_wxListBox_SetStringSelection), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetStringSelection},
    {sipName_SetValidator, SIP_MLMETH_CAST(meth_wxListBox_SetValidator), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_SetValidator},
    {sipName_ShouldInheritColours, meth_wxListBox_ShouldInheritColours, METH_VARARGS, doc_wxListBox_ShouldInheritColours},
    {sipName_TransferDataFromWindow, meth_wxListBox_TransferDataFromWindow, METH_VARARGS, doc_wxListBox_TransferDataFromWindow},
    {sipName_TransferDataToWindow, meth_wxListBox_TransferDataToWindow, METH_VARARGS, doc_wxListBox_TransferDataToWindow},
    {sipName_TryAfter, SIP_MLMETH_CAST(meth_wxListBox_TryAfter), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_TryAfter},
    {sipName_TryBefore, SIP_MLMETH_CAST(meth_wxListBox_TryBefore), METH_VARARGS|METH_KEYWORDS, doc_wxListBox_TryBefore},
    {sipName_Validate, meth_wxListBox_Validate, METH_VARARGS, doc_wxListBox_Validate}
};

sipVariableDef variables_wxListBox[] = {
    {PropertyVariable, sipName_TopItem, &methods_wxListBox[33], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Selections, &methods_wxListBox[31], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Selection, &methods_wxListBox[30], &methods_wxListBox[53], SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_CountPerPage, &methods_wxListBox[26], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    {PropertyVariable, sipName_Count, &methods_wxListBox[25], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
};

PyDoc_STRVAR(doc_wxListBox, "ListBox() -> None\n"
"ListBox(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, choices=[], style=0, validator=DefaultValidator, name=ListBoxNameStr) -> None\n"
"\n"
"A listbox is used to select one or more of a list of strings.");


sipClassTypeDef sipTypeDef__core_wxListBox = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_SCC|SIP_TYPE_CLASS,
        sipNameNr_wxListBox,
        SIP_NULLPTR,
        SIP_NULLPTR,
    },
    {
        sipNameNr_ListBox,
        {0, 0, 1},
        63, methods_wxListBox,
        0, SIP_NULLPTR,
        5, variables_wxListBox,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_wxListBox,
    -1,
    -1,
    supers_wxListBox,
    SIP_NULLPTR,
    init_type_wxListBox,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_wxListBox,
    SIP_NULLPTR,
    array_wxListBox,
    SIP_NULLPTR,
    release_wxListBox,
    cast_wxListBox,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    array_delete_wxListBox,
    sizeof (::wxListBox),
};
