/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.6.2
 *
 * Copyright (c) 2022 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQt5.
 * 
 * This file may be used under the terms of the GNU General Public License
 * version 3.0 as published by the Free Software Foundation and appearing in
 * the file LICENSE included in the packaging of this file.  Please review the
 * following information to ensure the GNU General Public License version 3.0
 * requirements will be met: http://www.gnu.org/copyleft/gpl.html.
 * 
 * If you do not wish to use this file under the terms of the GPL version 3.0
 * then you may purchase a commercial license.  For more information contact
 * info@riverbankcomputing.com.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#include "sipAPIQtWidgets.h"

#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qmenu.sip"
#include <qmenu.h>
#line 29 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"

#line 28 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qwidget.sip"
#include <qwidget.h>
#line 33 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 27 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qstring.sip"
#include <qstring.h>
#line 36 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qpoint.sip"
#include <qpoint.h>
#line 39 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qaction.sip"
#include <qaction.h>
#line 42 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qicon.sip"
#include <qicon.h>
#line 45 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 48 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 235 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 51 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 675 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 54 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 398 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 57 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 471 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 60 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 253 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 63 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 205 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 66 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 363 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 69 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 503 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qstyleoption.sip"
#include <qstyleoption.h>
#line 72 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qrect.sip"
#include <qrect.h>
#line 75 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qsize.sip"
#include <qsize.h>
#line 78 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 149 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 81 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qkeysequence.sip"
#include <qkeysequence.h>
#line 84 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qscreen.sip"
#include <qscreen.h>
#line 87 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 90 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qpainter.sip"
#include <qpainter.h>
#line 93 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 30 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qbytearray.sip"
#include <qbytearray.h>
#line 96 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qwindow.sip"
#include <qwindow.h>
#line 99 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 102 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qpixmap.sip"
#include <qpixmap.h>
#line 105 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 108 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qmargins.sip"
#include <qmargins.h>
#line 111 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 114 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qgraphicseffect.sip"
#include <qgraphicseffect.h>
#line 117 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qgraphicsproxywidget.sip"
#include <qgraphicsproxywidget.h>
#line 120 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 195 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qglobal.sip"
#include <QtGlobal>
#line 123 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qlocale.sip"
#include <qlocale.h>
#line 126 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qpaintdevice.sip"
#include <qpaintdevice.h>
#line 129 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qregion.sip"
#include <qregion.h>
#line 132 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qwidget.sip"
#include <qwidget.h>
#line 135 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qfontinfo.sip"
#include <qfontinfo.h>
#line 138 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qfontmetrics.sip"
#include <qfontmetrics.h>
#line 141 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qfont.sip"
#include <qfont.h>
#line 144 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 147 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 509 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 150 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 460 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 153 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 570 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 156 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 619 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 159 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 592 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 162 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 608 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 165 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 302 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 168 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 482 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 171 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 438 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 174 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 425 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 177 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 412 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 180 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 384 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qevent.sip"
#include <qevent.h>
#line 183 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 52 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qpaintengine.sip"
#include <qpaintengine.h>
#line 186 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qlayout.sip"
#include <qlayout.h>
#line 189 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qsizepolicy.sip"
#include <qsizepolicy.h>
#line 192 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 195 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qcursor.sip"
#include <qcursor.h>
#line 198 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qbitmap.sip"
#include <qbitmap.h>
#line 201 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtGui/qpalette.sip"
#include <qpalette.h>
#line 204 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qstyle.sip"
#include <qstyle.h>
#line 207 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 146 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 212 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 215 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 247 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qcoreevent.sip"
#include <qcoreevent.h>
#line 218 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qobject.sip"
#include <qobject.h>
#line 221 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 38 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 224 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 149 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qpycore_qlist.sip"
#include <qlist.h>
#line 227 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qthread.sip"
#include <qthread.h>
#line 230 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qnamespace.sip"
#include <qnamespace.h>
#line 233 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qregexp.sip"
#include <qregexp.h>
#line 236 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qregularexpression.sip"
#include <qregularexpression.h>
#line 239 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qobjectdefs.sip"
#include <qobjectdefs.h>
#line 242 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"


class sipQMenu : public  ::QMenu
{
public:
    sipQMenu( ::QWidget*);
    sipQMenu(const  ::QString&, ::QWidget*);
    virtual ~sipQMenu();

    int qt_metacall(QMetaObject::Call, int, void **) SIP_OVERRIDE;
    void *qt_metacast(const char *) SIP_OVERRIDE;
    const QMetaObject *metaObject() const SIP_OVERRIDE;

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void disconnectNotify(const  ::QMetaMethod&) SIP_OVERRIDE;
    void connectNotify(const  ::QMetaMethod&) SIP_OVERRIDE;
    void customEvent( ::QEvent*) SIP_OVERRIDE;
    void childEvent( ::QChildEvent*) SIP_OVERRIDE;
    void timerEvent( ::QTimerEvent*) SIP_OVERRIDE;
    bool eventFilter( ::QObject*, ::QEvent*) SIP_OVERRIDE;
    bool event( ::QEvent*) SIP_OVERRIDE;
    int metric( ::QPaintDevice::PaintDeviceMetric) const SIP_OVERRIDE;
     ::QPaintEngine* paintEngine() const SIP_OVERRIDE;
    int devType() const SIP_OVERRIDE;
    void setVisible(bool) SIP_OVERRIDE;
     ::QSize sizeHint() const SIP_OVERRIDE;
     ::QSize minimumSizeHint() const SIP_OVERRIDE;
    int heightForWidth(int) const SIP_OVERRIDE;
    void mousePressEvent( ::QMouseEvent*) SIP_OVERRIDE;
    void mouseReleaseEvent( ::QMouseEvent*) SIP_OVERRIDE;
    void mouseDoubleClickEvent( ::QMouseEvent*) SIP_OVERRIDE;
    void mouseMoveEvent( ::QMouseEvent*) SIP_OVERRIDE;
    void wheelEvent( ::QWheelEvent*) SIP_OVERRIDE;
    void keyPressEvent( ::QKeyEvent*) SIP_OVERRIDE;
    void keyReleaseEvent( ::QKeyEvent*) SIP_OVERRIDE;
    void focusInEvent( ::QFocusEvent*) SIP_OVERRIDE;
    void focusOutEvent( ::QFocusEvent*) SIP_OVERRIDE;
    void enterEvent( ::QEvent*) SIP_OVERRIDE;
    void leaveEvent( ::QEvent*) SIP_OVERRIDE;
    void paintEvent( ::QPaintEvent*) SIP_OVERRIDE;
    void moveEvent( ::QMoveEvent*) SIP_OVERRIDE;
    void resizeEvent( ::QResizeEvent*) SIP_OVERRIDE;
    void closeEvent( ::QCloseEvent*) SIP_OVERRIDE;
    void contextMenuEvent( ::QContextMenuEvent*) SIP_OVERRIDE;
    void tabletEvent( ::QTabletEvent*) SIP_OVERRIDE;
    void actionEvent( ::QActionEvent*) SIP_OVERRIDE;
    void dragEnterEvent( ::QDragEnterEvent*) SIP_OVERRIDE;
    void dragMoveEvent( ::QDragMoveEvent*) SIP_OVERRIDE;
    void dragLeaveEvent( ::QDragLeaveEvent*) SIP_OVERRIDE;
    void dropEvent( ::QDropEvent*) SIP_OVERRIDE;
    void showEvent( ::QShowEvent*) SIP_OVERRIDE;
    void hideEvent( ::QHideEvent*) SIP_OVERRIDE;
    void changeEvent( ::QEvent*) SIP_OVERRIDE;
    void inputMethodEvent( ::QInputMethodEvent*) SIP_OVERRIDE;
     ::QVariant inputMethodQuery( ::Qt::InputMethodQuery) const SIP_OVERRIDE;
    bool focusNextPrevChild(bool) SIP_OVERRIDE;
    bool hasHeightForWidth() const SIP_OVERRIDE;
    bool nativeEvent(const  ::QByteArray&,void*,long*) SIP_OVERRIDE;
     ::QPainter* sharedPainter() const SIP_OVERRIDE;
    void initPainter( ::QPainter*) const SIP_OVERRIDE;

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[46];
};

sipQMenu::sipQMenu( ::QWidget*a0):  ::QMenu(a0), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipQMenu::sipQMenu(const  ::QString& a0, ::QWidget*a1):  ::QMenu(a0,a1), sipPySelf(SIP_NULLPTR)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

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

const QMetaObject *sipQMenu::metaObject() const
{
    if (sipGetInterpreter())
        return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : sip_QtWidgets_qt_metaobject(sipPySelf,sipType_QMenu);

    return  ::QMenu::metaObject();
}

int sipQMenu::qt_metacall(QMetaObject::Call _c,int _id,void **_a)
{
    _id =  ::QMenu::qt_metacall(_c,_id,_a);

    if (_id >= 0)
    {
        SIP_BLOCK_THREADS
        _id = sip_QtWidgets_qt_metacall(sipPySelf,sipType_QMenu,_c,_id,_a);
        SIP_UNBLOCK_THREADS
    }

    return _id;
}

void *sipQMenu::qt_metacast(const char *_clname)
{
    void *sipCpp;

    return (sip_QtWidgets_qt_metacast(sipPySelf, sipType_QMenu, _clname, &sipCpp) ? sipCpp :  ::QMenu::qt_metacast(_clname));
}

void sipQMenu::disconnectNotify(const  ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::disconnectNotify(a0);
        return;
    }

    extern void sipVH_QtWidgets_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const  ::QMetaMethod&);

    sipVH_QtWidgets_0(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::connectNotify(const  ::QMetaMethod& a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::connectNotify(a0);
        return;
    }

    extern void sipVH_QtWidgets_0(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const  ::QMetaMethod&);

    sipVH_QtWidgets_0(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::customEvent( ::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::customEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_1(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    sipVH_QtWidgets_1(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::childEvent( ::QChildEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::childEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_2(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QChildEvent*);

    sipVH_QtWidgets_2(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::timerEvent( ::QTimerEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::timerEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_3(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QTimerEvent*);

    sipVH_QtWidgets_3(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQMenu::eventFilter( ::QObject*a0, ::QEvent*a1)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::eventFilter(a0,a1);

    extern bool sipVH_QtWidgets_4(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QObject*, ::QEvent*);

    return sipVH_QtWidgets_4(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1);
}

bool sipQMenu::event( ::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::event(a0);

    extern bool sipVH_QtWidgets_5(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    return sipVH_QtWidgets_5(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

int sipQMenu::metric( ::QPaintDevice::PaintDeviceMetric a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::metric(a0);

    extern int sipVH_QtWidgets_6(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QPaintDevice::PaintDeviceMetric);

    return sipVH_QtWidgets_6(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

 ::QPaintEngine* sipQMenu::paintEngine() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::paintEngine();

    extern  ::QPaintEngine* sipVH_QtWidgets_7(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtWidgets_7(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

int sipQMenu::devType() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::devType();

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

    return sipVH_QtWidgets_8(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQMenu::setVisible(bool a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::setVisible(a0);
        return;
    }

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

    sipVH_QtWidgets_9(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

 ::QSize sipQMenu::sizeHint() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::sizeHint();

    extern  ::QSize sipVH_QtWidgets_10(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtWidgets_10(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

 ::QSize sipQMenu::minimumSizeHint() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::minimumSizeHint();

    extern  ::QSize sipVH_QtWidgets_10(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtWidgets_10(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

int sipQMenu::heightForWidth(int a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::heightForWidth(a0);

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

    return sipVH_QtWidgets_11(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::mousePressEvent( ::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::mousePressEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QMouseEvent*);

    sipVH_QtWidgets_12(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::mouseReleaseEvent( ::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::mouseReleaseEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QMouseEvent*);

    sipVH_QtWidgets_12(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::mouseDoubleClickEvent( ::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::mouseDoubleClickEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QMouseEvent*);

    sipVH_QtWidgets_12(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::mouseMoveEvent( ::QMouseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::mouseMoveEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_12(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QMouseEvent*);

    sipVH_QtWidgets_12(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::wheelEvent( ::QWheelEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::wheelEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_13(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QWheelEvent*);

    sipVH_QtWidgets_13(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::keyPressEvent( ::QKeyEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::keyPressEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_14(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QKeyEvent*);

    sipVH_QtWidgets_14(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::keyReleaseEvent( ::QKeyEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::keyReleaseEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_14(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QKeyEvent*);

    sipVH_QtWidgets_14(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::focusInEvent( ::QFocusEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::focusInEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QFocusEvent*);

    sipVH_QtWidgets_15(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::focusOutEvent( ::QFocusEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::focusOutEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_15(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QFocusEvent*);

    sipVH_QtWidgets_15(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::enterEvent( ::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::enterEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_1(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    sipVH_QtWidgets_1(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::leaveEvent( ::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::leaveEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_1(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    sipVH_QtWidgets_1(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::paintEvent( ::QPaintEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::paintEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_16(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QPaintEvent*);

    sipVH_QtWidgets_16(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::moveEvent( ::QMoveEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::moveEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_17(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QMoveEvent*);

    sipVH_QtWidgets_17(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::resizeEvent( ::QResizeEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::resizeEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QResizeEvent*);

    sipVH_QtWidgets_18(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::closeEvent( ::QCloseEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::closeEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_19(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QCloseEvent*);

    sipVH_QtWidgets_19(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::contextMenuEvent( ::QContextMenuEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::contextMenuEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QContextMenuEvent*);

    sipVH_QtWidgets_20(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::tabletEvent( ::QTabletEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::tabletEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_21(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QTabletEvent*);

    sipVH_QtWidgets_21(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::actionEvent( ::QActionEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::actionEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_22(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QActionEvent*);

    sipVH_QtWidgets_22(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::dragEnterEvent( ::QDragEnterEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::dragEnterEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_23(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QDragEnterEvent*);

    sipVH_QtWidgets_23(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::dragMoveEvent( ::QDragMoveEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[33], &sipPySelf, SIP_NULLPTR, sipName_dragMoveEvent);

    if (!sipMeth)
    {
         ::QMenu::dragMoveEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_24(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QDragMoveEvent*);

    sipVH_QtWidgets_24(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::dragLeaveEvent( ::QDragLeaveEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::dragLeaveEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_25(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QDragLeaveEvent*);

    sipVH_QtWidgets_25(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::dropEvent( ::QDropEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[35], &sipPySelf, SIP_NULLPTR, sipName_dropEvent);

    if (!sipMeth)
    {
         ::QMenu::dropEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_26(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QDropEvent*);

    sipVH_QtWidgets_26(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::showEvent( ::QShowEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::showEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_27(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QShowEvent*);

    sipVH_QtWidgets_27(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::hideEvent( ::QHideEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::hideEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_28(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QHideEvent*);

    sipVH_QtWidgets_28(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::changeEvent( ::QEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::changeEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_1(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QEvent*);

    sipVH_QtWidgets_1(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

void sipQMenu::inputMethodEvent( ::QInputMethodEvent*a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::inputMethodEvent(a0);
        return;
    }

    extern void sipVH_QtWidgets_29(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QInputMethodEvent*);

    sipVH_QtWidgets_29(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

 ::QVariant sipQMenu::inputMethodQuery( ::Qt::InputMethodQuery a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::inputMethodQuery(a0);

    extern  ::QVariant sipVH_QtWidgets_30(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::Qt::InputMethodQuery);

    return sipVH_QtWidgets_30(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQMenu::focusNextPrevChild(bool a0)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

    sipMeth = sipIsPyMethod(&sipGILState, &sipPyMethods[41], &sipPySelf, SIP_NULLPTR, sipName_focusNextPrevChild);

    if (!sipMeth)
        return  ::QMenu::focusNextPrevChild(a0);

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

    return sipVH_QtWidgets_31(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

bool sipQMenu::hasHeightForWidth() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::hasHeightForWidth();

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

    return sipVH_QtWidgets_32(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

bool sipQMenu::nativeEvent(const  ::QByteArray& a0,void*a1,long*a2)
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::nativeEvent(a0,a1,a2);

    extern bool sipVH_QtWidgets_33(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const  ::QByteArray&,void*,long*);

    return sipVH_QtWidgets_33(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0, a1, a2);
}

 ::QPainter* sipQMenu::sharedPainter() const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
        return  ::QMenu::sharedPainter();

    extern  ::QPainter* sipVH_QtWidgets_34(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);

    return sipVH_QtWidgets_34(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth);
}

void sipQMenu::initPainter( ::QPainter*a0) const
{
    sip_gilstate_t sipGILState;
    PyObject *sipMeth;

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

    if (!sipMeth)
    {
         ::QMenu::initPainter(a0);
        return;
    }

    extern void sipVH_QtWidgets_35(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::QPainter*);

    sipVH_QtWidgets_35(sipGILState, sipImportedVirtErrorHandlers_QtWidgets_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}


PyDoc_STRVAR(doc_QMenu_addAction, "addAction(self, QAction)\n"
"addAction(self, str) -> QAction\n"
"addAction(self, QIcon, str) -> QAction\n"
"addAction(self, str, PYQT_SLOT, shortcut: Union[QKeySequence, QKeySequence.StandardKey, str, int] = 0) -> QAction\n"
"addAction(self, QIcon, str, PYQT_SLOT, shortcut: Union[QKeySequence, QKeySequence.StandardKey, str, int] = 0) -> QAction");

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

    {
         ::QAction* a0;
         ::QMenu *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0))
        {
            sipCpp->addAction(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    {
        const  ::QString* a0;
        int a0State = 0;
         ::QMenu *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "BJ1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QString, &a0, &a0State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->addAction(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    {
        const  ::QIcon* a0;
        const  ::QString* a1;
        int a1State = 0;
         ::QMenu *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "BJ9J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QIcon, &a0, sipType_QString, &a1, &a1State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->addAction(*a0,*a1);
            sipReleaseType(const_cast< ::QString *>(a1), sipType_QString, a1State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    {
        const  ::QString* a0;
        int a0State = 0;
        PyObject * a1;
        const  ::QKeySequence& a2def = 0;
        const  ::QKeySequence* a2 = &a2def;
        int a2State = 0;
         ::QMenu *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ1P0|J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QString, &a0, &a0State, &a1, sipType_QKeySequence, &a2, &a2State))
        {
             ::QAction*sipRes = 0;
            sipErrorState sipError = sipErrorNone;

#line 38 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qmenu.sip"
        QObject *receiver;
        QByteArray slot_signature;
        
        if ((sipError = pyqt5_qtwidgets_get_connection_parts(a1, sipCpp, "()", false, &receiver, slot_signature)) == sipErrorNone)
        {
            sipRes = sipCpp->addAction(*a0, receiver, slot_signature.constData(), *a2);
        }
        else if (sipError == sipErrorContinue)
        {
            sipError = sipBadCallableArg(1, a1);
        }
#line 1246 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);
            sipReleaseType(const_cast< ::QKeySequence *>(a2), sipType_QKeySequence, a2State);

            if (sipError == sipErrorFail)
                return 0;

            if (sipError == sipErrorNone)
            {
            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
            }

            sipAddException(sipError, &sipParseErr);
        }
    }

    {
        const  ::QIcon* a0;
        const  ::QString* a1;
        int a1State = 0;
        PyObject * a2;
        const  ::QKeySequence& a3def = 0;
        const  ::QKeySequence* a3 = &a3def;
        int a3State = 0;
         ::QMenu *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9J1P0|J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QIcon, &a0, sipType_QString, &a1, &a1State, &a2, sipType_QKeySequence, &a3, &a3State))
        {
             ::QAction*sipRes = 0;
            sipErrorState sipError = sipErrorNone;

#line 53 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtWidgets/qmenu.sip"
        QObject *receiver;
        QByteArray slot_signature;
        
        if ((sipError = pyqt5_qtwidgets_get_connection_parts(a2, sipCpp, "()", false, &receiver, slot_signature)) == sipErrorNone)
        {
            sipRes = sipCpp->addAction(*a0, *a1, receiver, slot_signature.constData(), *a3);
        }
        else if (sipError == sipErrorContinue)
        {
            sipError = sipBadCallableArg(2, a2);
        }
#line 1296 "/build/pyqt5/src/PyQt5-5.15.7/build/QtWidgets/sipQtWidgetsQMenu.cpp"
            sipReleaseType(const_cast< ::QString *>(a1), sipType_QString, a1State);
            sipReleaseType(const_cast< ::QKeySequence *>(a3), sipType_QKeySequence, a3State);

            if (sipError == sipErrorFail)
                return 0;

            if (sipError == sipErrorNone)
            {
            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
            }

            sipAddException(sipError, &sipParseErr);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_addAction, doc_QMenu_addAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_addMenu, "addMenu(self, QMenu) -> QAction\n"
"addMenu(self, str) -> QMenu\n"
"addMenu(self, QIcon, str) -> QMenu");

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

    {
         ::QMenu* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QMenu, &a0))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->addMenu(a0);

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

    {
        const  ::QString* a0;
        int a0State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QString, &a0, &a0State))
        {
             ::QMenu*sipRes;

            sipRes = sipCpp->addMenu(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            return sipConvertFromType(sipRes,sipType_QMenu,sipSelf);
        }
    }

    {
        const  ::QIcon* a0;
        const  ::QString* a1;
        int a1State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QIcon, &a0, sipType_QString, &a1, &a1State))
        {
             ::QMenu*sipRes;

            sipRes = sipCpp->addMenu(*a0,*a1);
            sipReleaseType(const_cast< ::QString *>(a1), sipType_QString, a1State);

            return sipConvertFromType(sipRes,sipType_QMenu,sipSelf);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_addMenu, doc_QMenu_addMenu);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_addSeparator, "addSeparator(self) -> QAction");

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

    {
         ::QMenu *sipCpp;

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

            sipRes = sipCpp->addSeparator();

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_addSeparator, doc_QMenu_addSeparator);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_insertMenu, "insertMenu(self, QAction, QMenu) -> QAction");

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

    {
         ::QAction* a0;
         ::QMenu* a1;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8J8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0, sipType_QMenu, &a1))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->insertMenu(a0,a1);

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_insertMenu, doc_QMenu_insertMenu);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_insertSeparator, "insertSeparator(self, QAction) -> QAction");

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

    {
         ::QAction* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->insertSeparator(a0);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_insertSeparator, doc_QMenu_insertSeparator);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_clear, "clear(self)");

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

    {
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMenu, &sipCpp))
        {
            sipCpp->clear();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_clear, doc_QMenu_clear);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setTearOffEnabled, "setTearOffEnabled(self, bool)");

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

    {
        bool a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bb", &sipSelf, sipType_QMenu, &sipCpp, &a0))
        {
            sipCpp->setTearOffEnabled(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setTearOffEnabled, doc_QMenu_setTearOffEnabled);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_isTearOffEnabled, "isTearOffEnabled(self) -> bool");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->isTearOffEnabled();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_isTearOffEnabled, doc_QMenu_isTearOffEnabled);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_isTearOffMenuVisible, "isTearOffMenuVisible(self) -> bool");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->isTearOffMenuVisible();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_isTearOffMenuVisible, doc_QMenu_isTearOffMenuVisible);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_hideTearOffMenu, "hideTearOffMenu(self)");

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

    {
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMenu, &sipCpp))
        {
            sipCpp->hideTearOffMenu();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_hideTearOffMenu, doc_QMenu_hideTearOffMenu);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setDefaultAction, "setDefaultAction(self, QAction)");

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

    {
         ::QAction* a0;
        PyObject *a0Keep;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B@J8", &sipSelf, sipType_QMenu, &sipCpp, &a0Keep, sipType_QAction, &a0))
        {
            sipCpp->setDefaultAction(a0);

            sipKeepReference(sipSelf, -37, a0Keep);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setDefaultAction, doc_QMenu_setDefaultAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_defaultAction, "defaultAction(self) -> QAction");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->defaultAction();

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_defaultAction, doc_QMenu_defaultAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setActiveAction, "setActiveAction(self, QAction)");

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

    {
         ::QAction* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0))
        {
            sipCpp->setActiveAction(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setActiveAction, doc_QMenu_setActiveAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_activeAction, "activeAction(self) -> QAction");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->activeAction();

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_activeAction, doc_QMenu_activeAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_popup, "popup(self, QPoint, action: QAction = None)");

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

    {
        const  ::QPoint* a0;
         ::QAction* a1 = 0;
         ::QMenu *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|J8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPoint, &a0, sipType_QAction, &a1))
        {
            sipCpp->popup(*a0,a1);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_popup, doc_QMenu_popup);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_exec_, "exec_(self) -> QAction\n"
"exec_(self, QPoint, action: QAction = None) -> QAction\n"
"exec_(Iterable[QAction], QPoint, at: QAction = None, parent: QWidget = None) -> QAction");

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

    {
         ::QMenu *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_QMenu, &sipCpp))
        {
             ::QAction*sipRes;

            sipCallHook("__pyQtPreEventLoopHook__");

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->exec();
            Py_END_ALLOW_THREADS


            sipCallHook("__pyQtPostEventLoopHook__");
            return sipConvertFromType(sipRes,sipType_QAction,SIP_NULLPTR);
        }
    }

    {
        const  ::QPoint* a0;
         ::QAction* a1 = 0;
         ::QMenu *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|J8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPoint, &a0, sipType_QAction, &a1))
        {
             ::QAction*sipRes;

            sipCallHook("__pyQtPreEventLoopHook__");

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->exec(*a0,a1);
            Py_END_ALLOW_THREADS


            sipCallHook("__pyQtPostEventLoopHook__");
            return sipConvertFromType(sipRes,sipType_QAction,SIP_NULLPTR);
        }
    }

    {
        QList< ::QAction*>* a0;
        int a0State = 0;
        const  ::QPoint* a1;
         ::QAction* a2 = 0;
         ::QWidget* a3 = 0;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "J1J9|J8J8", sipType_QList_0101QAction, &a0, &a0State, sipType_QPoint, &a1, sipType_QAction, &a2, sipType_QWidget, &a3))
        {
             ::QAction*sipRes;

            sipCallHook("__pyQtPreEventLoopHook__");

            Py_BEGIN_ALLOW_THREADS
            sipRes =  ::QMenu::exec(*a0,*a1,a2,a3);
            Py_END_ALLOW_THREADS
            sipReleaseType(a0, sipType_QList_0101QAction, a0State);


            sipCallHook("__pyQtPostEventLoopHook__");
            return sipConvertFromType(sipRes,sipType_QAction,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_exec_, doc_QMenu_exec_);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_exec, "exec(self) -> QAction\n"
"exec(self, QPoint, action: QAction = None) -> QAction\n"
"exec(Iterable[QAction], QPoint, at: QAction = None, parent: QWidget = None) -> QAction");

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

    {
         ::QMenu *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, SIP_NULLPTR, "B", &sipSelf, sipType_QMenu, &sipCpp))
        {
             ::QAction*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->exec();
            Py_END_ALLOW_THREADS

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

    {
        const  ::QPoint* a0;
         ::QAction* a1 = 0;
         ::QMenu *sipCpp;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ9|J8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPoint, &a0, sipType_QAction, &a1))
        {
             ::QAction*sipRes;

            Py_BEGIN_ALLOW_THREADS
            sipRes = sipCpp->exec(*a0,a1);
            Py_END_ALLOW_THREADS

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

    {
        QList< ::QAction*>* a0;
        int a0State = 0;
        const  ::QPoint* a1;
         ::QAction* a2 = 0;
         ::QWidget* a3 = 0;

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

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "J1J9|J8J8", sipType_QList_0101QAction, &a0, &a0State, sipType_QPoint, &a1, sipType_QAction, &a2, sipType_QWidget, &a3))
        {
             ::QAction*sipRes;

            sipCallHook("__pyQtPreEventLoopHook__");

            Py_BEGIN_ALLOW_THREADS
            sipRes =  ::QMenu::exec(*a0,*a1,a2,a3);
            Py_END_ALLOW_THREADS
            sipReleaseType(a0, sipType_QList_0101QAction, a0State);


            sipCallHook("__pyQtPostEventLoopHook__");
            return sipConvertFromType(sipRes,sipType_QAction,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_exec, doc_QMenu_exec);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_sizeHint, "sizeHint(self) -> QSize");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = new  ::QSize((sipSelfWasArg ? sipCpp-> ::QMenu::sizeHint() : sipCpp->sizeHint()));

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_sizeHint, doc_QMenu_sizeHint);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_actionGeometry, "actionGeometry(self, QAction) -> QRect");

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

    {
         ::QAction* a0;
        const  ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0))
        {
             ::QRect*sipRes;

            sipRes = new  ::QRect(sipCpp->actionGeometry(a0));

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_actionGeometry, doc_QMenu_actionGeometry);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_actionAt, "actionAt(self, QPoint) -> QAction");

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

    {
        const  ::QPoint* a0;
        const  ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPoint, &a0))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->actionAt(*a0);

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_actionAt, doc_QMenu_actionAt);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_menuAction, "menuAction(self) -> QAction");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->menuAction();

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_menuAction, doc_QMenu_menuAction);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_title, "title(self) -> str");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = new  ::QString(sipCpp->title());

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_title, doc_QMenu_title);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setTitle, "setTitle(self, str)");

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

    {
        const  ::QString* a0;
        int a0State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QString, &a0, &a0State))
        {
            sipCpp->setTitle(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setTitle, doc_QMenu_setTitle);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_icon, "icon(self) -> QIcon");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = new  ::QIcon(sipCpp->icon());

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

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_icon, doc_QMenu_icon);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setIcon, "setIcon(self, QIcon)");

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

    {
        const  ::QIcon* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_QMenu, &sipCpp, sipType_QIcon, &a0))
        {
            sipCpp->setIcon(*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setIcon, doc_QMenu_setIcon);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setNoReplayFor, "setNoReplayFor(self, QWidget)");

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

    {
         ::QWidget* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QWidget, &a0))
        {
            sipCpp->setNoReplayFor(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setNoReplayFor, doc_QMenu_setNoReplayFor);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_columnCount, "columnCount(self) -> int");

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

    {
        const  ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "p", &sipSelf, sipType_QMenu, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->columnCount();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_columnCount, doc_QMenu_columnCount);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_initStyleOption, "initStyleOption(self, QStyleOptionMenuItem, QAction)");

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

    {
         ::QStyleOptionMenuItem* a0;
        const  ::QAction* a1;
        const  ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8J8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QStyleOptionMenuItem, &a0, sipType_QAction, &a1))
        {
            sipCpp->initStyleOption(a0,a1);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_initStyleOption, doc_QMenu_initStyleOption);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_changeEvent, "changeEvent(self, QEvent)");

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

    {
         ::QEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::changeEvent(a0) : sipCpp->changeEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_changeEvent, doc_QMenu_changeEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_keyPressEvent, "keyPressEvent(self, QKeyEvent)");

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

    {
         ::QKeyEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QKeyEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::keyPressEvent(a0) : sipCpp->keyPressEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_keyPressEvent, doc_QMenu_keyPressEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_mouseReleaseEvent, "mouseReleaseEvent(self, QMouseEvent)");

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

    {
         ::QMouseEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QMouseEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::mouseReleaseEvent(a0) : sipCpp->mouseReleaseEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_mouseReleaseEvent, doc_QMenu_mouseReleaseEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_mousePressEvent, "mousePressEvent(self, QMouseEvent)");

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

    {
         ::QMouseEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QMouseEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::mousePressEvent(a0) : sipCpp->mousePressEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_mousePressEvent, doc_QMenu_mousePressEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_mouseMoveEvent, "mouseMoveEvent(self, QMouseEvent)");

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

    {
         ::QMouseEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QMouseEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::mouseMoveEvent(a0) : sipCpp->mouseMoveEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_mouseMoveEvent, doc_QMenu_mouseMoveEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_wheelEvent, "wheelEvent(self, QWheelEvent)");

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

    {
         ::QWheelEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QWheelEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::wheelEvent(a0) : sipCpp->wheelEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_wheelEvent, doc_QMenu_wheelEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_enterEvent, "enterEvent(self, QEvent)");

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

    {
         ::QEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::enterEvent(a0) : sipCpp->enterEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_enterEvent, doc_QMenu_enterEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_leaveEvent, "leaveEvent(self, QEvent)");

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

    {
         ::QEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::leaveEvent(a0) : sipCpp->leaveEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_leaveEvent, doc_QMenu_leaveEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_hideEvent, "hideEvent(self, QHideEvent)");

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

    {
         ::QHideEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QHideEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::hideEvent(a0) : sipCpp->hideEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_hideEvent, doc_QMenu_hideEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_paintEvent, "paintEvent(self, QPaintEvent)");

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

    {
         ::QPaintEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPaintEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::paintEvent(a0) : sipCpp->paintEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_paintEvent, doc_QMenu_paintEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_actionEvent, "actionEvent(self, QActionEvent)");

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

    {
         ::QActionEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QActionEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::actionEvent(a0) : sipCpp->actionEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_actionEvent, doc_QMenu_actionEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_timerEvent, "timerEvent(self, QTimerEvent)");

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

    {
         ::QTimerEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QTimerEvent, &a0))
        {
            (sipSelfWasArg ? sipCpp-> ::QMenu::timerEvent(a0) : sipCpp->timerEvent(a0));

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_timerEvent, doc_QMenu_timerEvent);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_event, "event(self, QEvent) -> bool");

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

    {
         ::QEvent* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pJ8", &sipSelf, sipType_QMenu, &sipCpp, sipType_QEvent, &a0))
        {
            bool sipRes;

            sipRes = (sipSelfWasArg ? sipCpp-> ::QMenu::event(a0) : sipCpp->event(a0));

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_event, doc_QMenu_event);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_focusNextPrevChild, "focusNextPrevChild(self, bool) -> bool");

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

    {
        bool a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "pb", &sipSelf, sipType_QMenu, &sipCpp, &a0))
        {
            bool sipRes;

            sipRes = (sipSelfWasArg ? sipCpp-> ::QMenu::focusNextPrevChild(a0) : sipCpp->focusNextPrevChild(a0));

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_focusNextPrevChild, doc_QMenu_focusNextPrevChild);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_isEmpty, "isEmpty(self) -> bool");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->isEmpty();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_isEmpty, doc_QMenu_isEmpty);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_separatorsCollapsible, "separatorsCollapsible(self) -> bool");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->separatorsCollapsible();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_separatorsCollapsible, doc_QMenu_separatorsCollapsible);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setSeparatorsCollapsible, "setSeparatorsCollapsible(self, bool)");

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

    {
        bool a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bb", &sipSelf, sipType_QMenu, &sipCpp, &a0))
        {
            sipCpp->setSeparatorsCollapsible(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setSeparatorsCollapsible, doc_QMenu_setSeparatorsCollapsible);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_addSection, "addSection(self, str) -> QAction\n"
"addSection(self, QIcon, str) -> QAction");

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

    {
        const  ::QString* a0;
        int a0State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QString, &a0, &a0State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->addSection(*a0);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    {
        const  ::QIcon* a0;
        const  ::QString* a1;
        int a1State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QIcon, &a0, sipType_QString, &a1, &a1State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->addSection(*a0,*a1);
            sipReleaseType(const_cast< ::QString *>(a1), sipType_QString, a1State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_addSection, doc_QMenu_addSection);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_insertSection, "insertSection(self, QAction, str) -> QAction\n"
"insertSection(self, QAction, QIcon, str) -> QAction");

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

    {
         ::QAction* a0;
        const  ::QString* a1;
        int a1State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0, sipType_QString, &a1, &a1State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->insertSection(a0,*a1);
            sipReleaseType(const_cast< ::QString *>(a1), sipType_QString, a1State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    {
         ::QAction* a0;
        const  ::QIcon* a1;
        const  ::QString* a2;
        int a2State = 0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8J9J1", &sipSelf, sipType_QMenu, &sipCpp, sipType_QAction, &a0, sipType_QIcon, &a1, sipType_QString, &a2, &a2State))
        {
             ::QAction*sipRes;

            sipRes = sipCpp->insertSection(a0,*a1,*a2);
            sipReleaseType(const_cast< ::QString *>(a2), sipType_QString, a2State);

            return sipConvertFromType(sipRes,sipType_QAction,sipSelf);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_insertSection, doc_QMenu_insertSection);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_toolTipsVisible, "toolTipsVisible(self) -> bool");

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

    {
        const  ::QMenu *sipCpp;

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

            sipRes = sipCpp->toolTipsVisible();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_toolTipsVisible, doc_QMenu_toolTipsVisible);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_setToolTipsVisible, "setToolTipsVisible(self, bool)");

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

    {
        bool a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "Bb", &sipSelf, sipType_QMenu, &sipCpp, &a0))
        {
            sipCpp->setToolTipsVisible(a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_setToolTipsVisible, doc_QMenu_setToolTipsVisible);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMenu_showTearOffMenu, "showTearOffMenu(self)\n"
"showTearOffMenu(self, QPoint)");

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

    {
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMenu, &sipCpp))
        {
            sipCpp->showTearOffMenu();

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    {
        const  ::QPoint* a0;
         ::QMenu *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_QMenu, &sipCpp, sipType_QPoint, &a0))
        {
            sipCpp->showTearOffMenu(*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    sipNoMethod(sipParseErr, sipName_QMenu, sipName_showTearOffMenu, doc_QMenu_showTearOffMenu);

    return SIP_NULLPTR;
}


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

    if (targetType == sipType_QMenu)
        return sipCppV;

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

    return SIP_NULLPTR;
}


/* Call the instance's destructor. */
extern "C" {static void release_QMenu(void *, int);}
static void release_QMenu(void *sipCppV, int)
{
     ::QMenu *sipCpp = reinterpret_cast< ::QMenu *>(sipCppV);

    if (QThread::currentThread() == sipCpp->thread())
        delete sipCpp;
    else
        sipCpp->deleteLater();
}


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


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


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

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


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

    {
         ::QWidget* a0 = 0;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "|JH", sipType_QWidget, &a0, sipOwner))
        {
            sipCpp = new sipQMenu(a0);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        const  ::QString* a0;
        int a0State = 0;
         ::QWidget* a1 = 0;

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

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "J1|JH", sipType_QString, &a0, &a0State, sipType_QWidget, &a1, sipOwner))
        {
            sipCpp = new sipQMenu(*a0,a1);
            sipReleaseType(const_cast< ::QString *>(a0), sipType_QString, a0State);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


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


static PyMethodDef methods_QMenu[] = {
    {sipName_actionAt, meth_QMenu_actionAt, METH_VARARGS, doc_QMenu_actionAt},
    {sipName_actionEvent, meth_QMenu_actionEvent, METH_VARARGS, doc_QMenu_actionEvent},
    {sipName_actionGeometry, meth_QMenu_actionGeometry, METH_VARARGS, doc_QMenu_actionGeometry},
    {sipName_activeAction, meth_QMenu_activeAction, METH_VARARGS, doc_QMenu_activeAction},
    {sipName_addAction, SIP_MLMETH_CAST(meth_QMenu_addAction), METH_VARARGS|METH_KEYWORDS, doc_QMenu_addAction},
    {sipName_addMenu, meth_QMenu_addMenu, METH_VARARGS, doc_QMenu_addMenu},
    {sipName_addSection, meth_QMenu_addSection, METH_VARARGS, doc_QMenu_addSection},
    {sipName_addSeparator, meth_QMenu_addSeparator, METH_VARARGS, doc_QMenu_addSeparator},
    {sipName_changeEvent, meth_QMenu_changeEvent, METH_VARARGS, doc_QMenu_changeEvent},
    {sipName_clear, meth_QMenu_clear, METH_VARARGS, doc_QMenu_clear},
    {sipName_columnCount, meth_QMenu_columnCount, METH_VARARGS, doc_QMenu_columnCount},
    {sipName_defaultAction, meth_QMenu_defaultAction, METH_VARARGS, doc_QMenu_defaultAction},
    {sipName_enterEvent, meth_QMenu_enterEvent, METH_VARARGS, doc_QMenu_enterEvent},
    {sipName_event, meth_QMenu_event, METH_VARARGS, doc_QMenu_event},
    {sipName_exec, SIP_MLMETH_CAST(meth_QMenu_exec), METH_VARARGS|METH_KEYWORDS, doc_QMenu_exec},
    {sipName_exec_, SIP_MLMETH_CAST(meth_QMenu_exec_), METH_VARARGS|METH_KEYWORDS, doc_QMenu_exec_},
    {sipName_focusNextPrevChild, meth_QMenu_focusNextPrevChild, METH_VARARGS, doc_QMenu_focusNextPrevChild},
    {sipName_hideEvent, meth_QMenu_hideEvent, METH_VARARGS, doc_QMenu_hideEvent},
    {sipName_hideTearOffMenu, meth_QMenu_hideTearOffMenu, METH_VARARGS, doc_QMenu_hideTearOffMenu},
    {sipName_icon, meth_QMenu_icon, METH_VARARGS, doc_QMenu_icon},
    {sipName_initStyleOption, meth_QMenu_initStyleOption, METH_VARARGS, doc_QMenu_initStyleOption},
    {sipName_insertMenu, meth_QMenu_insertMenu, METH_VARARGS, doc_QMenu_insertMenu},
    {sipName_insertSection, meth_QMenu_insertSection, METH_VARARGS, doc_QMenu_insertSection},
    {sipName_insertSeparator, meth_QMenu_insertSeparator, METH_VARARGS, doc_QMenu_insertSeparator},
    {sipName_isEmpty, meth_QMenu_isEmpty, METH_VARARGS, doc_QMenu_isEmpty},
    {sipName_isTearOffEnabled, meth_QMenu_isTearOffEnabled, METH_VARARGS, doc_QMenu_isTearOffEnabled},
    {sipName_isTearOffMenuVisible, meth_QMenu_isTearOffMenuVisible, METH_VARARGS, doc_QMenu_isTearOffMenuVisible},
    {sipName_keyPressEvent, meth_QMenu_keyPressEvent, METH_VARARGS, doc_QMenu_keyPressEvent},
    {sipName_leaveEvent, meth_QMenu_leaveEvent, METH_VARARGS, doc_QMenu_leaveEvent},
    {sipName_menuAction, meth_QMenu_menuAction, METH_VARARGS, doc_QMenu_menuAction},
    {sipName_mouseMoveEvent, meth_QMenu_mouseMoveEvent, METH_VARARGS, doc_QMenu_mouseMoveEvent},
    {sipName_mousePressEvent, meth_QMenu_mousePressEvent, METH_VARARGS, doc_QMenu_mousePressEvent},
    {sipName_mouseReleaseEvent, meth_QMenu_mouseReleaseEvent, METH_VARARGS, doc_QMenu_mouseReleaseEvent},
    {sipName_paintEvent, meth_QMenu_paintEvent, METH_VARARGS, doc_QMenu_paintEvent},
    {sipName_popup, SIP_MLMETH_CAST(meth_QMenu_popup), METH_VARARGS|METH_KEYWORDS, doc_QMenu_popup},
    {sipName_separatorsCollapsible, meth_QMenu_separatorsCollapsible, METH_VARARGS, doc_QMenu_separatorsCollapsible},
    {sipName_setActiveAction, meth_QMenu_setActiveAction, METH_VARARGS, doc_QMenu_setActiveAction},
    {sipName_setDefaultAction, meth_QMenu_setDefaultAction, METH_VARARGS, doc_QMenu_setDefaultAction},
    {sipName_setIcon, meth_QMenu_setIcon, METH_VARARGS, doc_QMenu_setIcon},
    {sipName_setNoReplayFor, meth_QMenu_setNoReplayFor, METH_VARARGS, doc_QMenu_setNoReplayFor},
    {sipName_setSeparatorsCollapsible, meth_QMenu_setSeparatorsCollapsible, METH_VARARGS, doc_QMenu_setSeparatorsCollapsible},
    {sipName_setTearOffEnabled, meth_QMenu_setTearOffEnabled, METH_VARARGS, doc_QMenu_setTearOffEnabled},
    {sipName_setTitle, meth_QMenu_setTitle, METH_VARARGS, doc_QMenu_setTitle},
    {sipName_setToolTipsVisible, meth_QMenu_setToolTipsVisible, METH_VARARGS, doc_QMenu_setToolTipsVisible},
    {sipName_showTearOffMenu, meth_QMenu_showTearOffMenu, METH_VARARGS, doc_QMenu_showTearOffMenu},
    {sipName_sizeHint, meth_QMenu_sizeHint, METH_VARARGS, doc_QMenu_sizeHint},
    {sipName_timerEvent, meth_QMenu_timerEvent, METH_VARARGS, doc_QMenu_timerEvent},
    {sipName_title, meth_QMenu_title, METH_VARARGS, doc_QMenu_title},
    {sipName_toolTipsVisible, meth_QMenu_toolTipsVisible, METH_VARARGS, doc_QMenu_toolTipsVisible},
    {sipName_wheelEvent, meth_QMenu_wheelEvent, METH_VARARGS, doc_QMenu_wheelEvent}
};

PyDoc_STRVAR(doc_QMenu, "\1QMenu(parent: QWidget = None)\n"
"QMenu(str, parent: QWidget = None)");


/* Define this type's signals. */
static const pyqt5QtSignal signals_QMenu[] = {
    {"triggered(QAction*)", "\1triggered(self, QAction)", SIP_NULLPTR, SIP_NULLPTR},
    {"hovered(QAction*)", "\1hovered(self, QAction)", SIP_NULLPTR, SIP_NULLPTR},
    {"aboutToShow()", "\1aboutToShow(self)", SIP_NULLPTR, SIP_NULLPTR},
    {"aboutToHide()", "\1aboutToHide(self)", SIP_NULLPTR, SIP_NULLPTR},
    {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR}
};


static pyqt5ClassPluginDef plugin_QMenu = {
    & ::QMenu::staticMetaObject,
    0,
    signals_QMenu,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtWidgets_QMenu = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_SCC|SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QMenu,
        SIP_NULLPTR,
        &plugin_QMenu
    },
    {
        sipNameNr_QMenu,
        {0, 0, 1},
        50, methods_QMenu,
        0, SIP_NULLPTR,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_QMenu,
    -1,
    -1,
    supers_QMenu,
    SIP_NULLPTR,
    init_type_QMenu,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_QMenu,
    SIP_NULLPTR,
    array_QMenu,
    SIP_NULLPTR,
    release_QMenu,
    cast_QMenu,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    array_delete_QMenu,
    sizeof ( ::QMenu),
};
