/*
 * Interface wrapper code.
 *
 * Generated by SIP 4.19.6
 */

#include "sipAPIKWidgetsAddons.h"

#include <kdualaction.h>

#include <qobject.h>
#include <qstring.h>
#include <qicon.h>
#include <kguiitem.h>
#include <qaction.h>
#include <qlist.h>
#include <qgraphicswidget.h>
#include <qlist.h>
#include <qwidget.h>
#include <qlist.h>
#include <qkeysequence.h>
#include <qcoreevent.h>
#include <qvariant.h>
#include <qfont.h>
#include <qnamespace.h>
#include <qmenu.h>
#include <qactiongroup.h>
#include <qmetaobject.h>
#include <qcoreevent.h>
#include <qcoreevent.h>
#include <qlist.h>
#include <qbytearray.h>
#include <qlist.h>
#include <qthread.h>
#include <qnamespace.h>
#include <qregexp.h>
#include <qregularexpression.h>
#include <qobjectdefs.h>


class sipKDualAction : public  ::KDualAction
{
public:
    sipKDualAction( ::QObject*);
    sipKDualAction(const  ::QString&,const  ::QString&, ::QObject*);
    virtual ~sipKDualAction();

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

    /*
     * There is a public method for every protected method visible from
     * this class.
     */
     ::QObject* sipProtect_sender() const;
    int sipProtect_receivers(const char*) const;
    void sipProtectVirt_timerEvent(bool, ::QTimerEvent*);
    void sipProtectVirt_childEvent(bool, ::QChildEvent*);
    void sipProtectVirt_customEvent(bool, ::QEvent*);
    void sipProtectVirt_connectNotify(bool,const  ::QMetaMethod&);
    void sipProtectVirt_disconnectNotify(bool,const  ::QMetaMethod&);
    int sipProtect_senderSignalIndex() const;
    bool sipProtect_isSignalConnected(const  ::QMetaMethod&) const;
    bool sipProtectVirt_event(bool, ::QEvent*);

    /*
     * There is a protected method for every virtual method visible from
     * this class.
     */
protected:
    void disconnectNotify(const  ::QMetaMethod&);
    void connectNotify(const  ::QMetaMethod&);
    void customEvent( ::QEvent*);
    void childEvent( ::QChildEvent*);
    void timerEvent( ::QTimerEvent*);
    bool eventFilter( ::QObject*, ::QEvent*);
    bool event( ::QEvent*);

public:
    sipSimpleWrapper *sipPySelf;

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

    char sipPyMethods[7];
};

sipKDualAction::sipKDualAction( ::QObject*a0):  ::KDualAction(a0), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKDualAction::sipKDualAction(const  ::QString& a0,const  ::QString& a1, ::QObject*a2):  ::KDualAction(a0,a1,a2), sipPySelf(0)
{
    memset(sipPyMethods, 0, sizeof (sipPyMethods));
}

sipKDualAction::~sipKDualAction()
{
    sipInstanceDestroyed(sipPySelf);
}

const QMetaObject *sipKDualAction::metaObject() const
{
    if (sipGetInterpreter())
        return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : sip_KWidgetsAddons_qt_metaobject(sipPySelf,sipType_KDualAction);

    return  ::KDualAction::metaObject();
}

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

    if (_id >= 0)
        _id = sip_KWidgetsAddons_qt_metacall(sipPySelf,sipType_KDualAction,_c,_id,_a);

    return _id;
}

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

    return (sip_KWidgetsAddons_qt_metacast(sipPySelf, sipType_KDualAction, _clname, &sipCpp) ? sipCpp :  ::KDualAction::qt_metacast(_clname));
}

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

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

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

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

    sipVH_KWidgetsAddons_35(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

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

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

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

    sipVH_KWidgetsAddons_35(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

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

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

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

    sipVH_KWidgetsAddons_7(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

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

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

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

    sipVH_KWidgetsAddons_34(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

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

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

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

    sipVH_KWidgetsAddons_33(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

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

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

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

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

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

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

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

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

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

    return sipVH_KWidgetsAddons_31(sipGILState, sipImportedVirtErrorHandlers_KWidgetsAddons_QtCore[0].iveh_handler, sipPySelf, sipMeth, a0);
}

 ::QObject* sipKDualAction::sipProtect_sender() const
{
    return  ::QObject::sender();
}

int sipKDualAction::sipProtect_receivers(const char*a0) const
{
    return  ::QObject::receivers(a0);
}

void sipKDualAction::sipProtectVirt_timerEvent(bool sipSelfWasArg, ::QTimerEvent*a0)
{
    (sipSelfWasArg ?  ::QObject::timerEvent(a0) : timerEvent(a0));
}

void sipKDualAction::sipProtectVirt_childEvent(bool sipSelfWasArg, ::QChildEvent*a0)
{
    (sipSelfWasArg ?  ::QObject::childEvent(a0) : childEvent(a0));
}

void sipKDualAction::sipProtectVirt_customEvent(bool sipSelfWasArg, ::QEvent*a0)
{
    (sipSelfWasArg ?  ::QObject::customEvent(a0) : customEvent(a0));
}

void sipKDualAction::sipProtectVirt_connectNotify(bool sipSelfWasArg,const  ::QMetaMethod& a0)
{
    (sipSelfWasArg ?  ::QObject::connectNotify(a0) : connectNotify(a0));
}

void sipKDualAction::sipProtectVirt_disconnectNotify(bool sipSelfWasArg,const  ::QMetaMethod& a0)
{
    (sipSelfWasArg ?  ::QObject::disconnectNotify(a0) : disconnectNotify(a0));
}

int sipKDualAction::sipProtect_senderSignalIndex() const
{
    return  ::QObject::senderSignalIndex();
}

bool sipKDualAction::sipProtect_isSignalConnected(const  ::QMetaMethod& a0) const
{
    return  ::QObject::isSignalConnected(a0);
}

bool sipKDualAction::sipProtectVirt_event(bool sipSelfWasArg, ::QEvent*a0)
{
    return (sipSelfWasArg ?  ::QAction::event(a0) : event(a0));
}


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

    {
        const sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "B", &sipSelf, sipType_KDualAction, &sipCpp))
        {
             ::QObject*sipRes = 0;

        // sender() must be called without the GIL to avoid possible deadlocks between
        // the GIL and Qt's internal thread data mutex.
        
        Py_BEGIN_ALLOW_THREADS
        
        #if defined(SIP_PROTECTED_IS_PUBLIC)
        sipRes = sipCpp->sender();
        #else
        sipRes = sipCpp->sipProtect_sender();
        #endif
        
        Py_END_ALLOW_THREADS
        
        if (!sipRes)
        {
            typedef QObject *(*qtcore_qobject_sender_t)();
        
            static qtcore_qobject_sender_t qtcore_qobject_sender = 0;
        
            if (!qtcore_qobject_sender)
            {
                qtcore_qobject_sender = (qtcore_qobject_sender_t)sipImportSymbol("qtcore_qobject_sender");
                Q_ASSERT(qtcore_qobject_sender);
            }
        
            sipRes = qtcore_qobject_sender();
        }

            return sipConvertFromType(sipRes,sipType_QObject,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_sender, NULL);

    return NULL;
}


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

    {
        PyObject * a0;
        const sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BP0", &sipSelf, sipType_KDualAction, &sipCpp, &a0))
        {
            int sipRes = 0;
            sipErrorState sipError = sipErrorNone;

        // We need to handle the signal object.  Import the helper if it hasn't already
        // been done.
        typedef sipErrorState (*pyqt5_get_signal_signature_t)(PyObject *, const QObject *, const QByteArray &);
        
        static pyqt5_get_signal_signature_t pyqt5_get_signal_signature = 0;
        
        if (!pyqt5_get_signal_signature)
        {
            pyqt5_get_signal_signature = (pyqt5_get_signal_signature_t)sipImportSymbol("pyqt5_get_signal_signature");
            Q_ASSERT(pyqt5_get_signal_signature);
        }
        
        QByteArray signal_signature;
            
        #if defined(SIP_PROTECTED_IS_PUBLIC)
        if ((sipError = pyqt5_get_signal_signature(a0, sipCpp, signal_signature)) == sipErrorNone)
        {
            sipRes = sipCpp->receivers(signal_signature.constData());
        }
        #else
        if ((sipError = pyqt5_get_signal_signature(a0, static_cast<const QObject *>(sipCpp), signal_signature)) == sipErrorNone)
        {
            sipRes = sipCpp->sipProtect_receivers(signal_signature.constData());
        }
        #endif
        else if (sipError == sipErrorContinue)
        {
            sipError = sipBadCallableArg(0, a0);
        }

            if (sipError == sipErrorFail)
                return 0;

            if (sipError == sipErrorNone)
            {
            return SIPLong_FromLong(sipRes);
            }

            sipAddException(sipError, &sipParseErr);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_receivers, NULL);

    return NULL;
}


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

    {
         ::QTimerEvent* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ8", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QTimerEvent, &a0))
        {
            sipCpp->sipProtectVirt_timerEvent(sipSelfWasArg,a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_timerEvent, NULL);

    return NULL;
}


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

    {
         ::QChildEvent* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ8", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QChildEvent, &a0))
        {
            sipCpp->sipProtectVirt_childEvent(sipSelfWasArg,a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_childEvent, NULL);

    return NULL;
}


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

    {
         ::QEvent* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ8", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QEvent, &a0))
        {
            sipCpp->sipProtectVirt_customEvent(sipSelfWasArg,a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_customEvent, NULL);

    return NULL;
}


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

    {
        const  ::QMetaMethod* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ9", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QMetaMethod, &a0))
        {
            sipCpp->sipProtectVirt_connectNotify(sipSelfWasArg,*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_connectNotify, NULL);

    return NULL;
}


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

    {
        const  ::QMetaMethod* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ9", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QMetaMethod, &a0))
        {
            sipCpp->sipProtectVirt_disconnectNotify(sipSelfWasArg,*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_disconnectNotify, NULL);

    return NULL;
}


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

    {
        const sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "B", &sipSelf, sipType_KDualAction, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->sipProtect_senderSignalIndex();

            return SIPLong_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_senderSignalIndex, NULL);

    return NULL;
}


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

    {
        const  ::QMetaMethod* a0;
        const sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ9", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QMetaMethod, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->sipProtect_isSignalConnected(*a0);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_isSignalConnected, NULL);

    return NULL;
}


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

    {
         ::QEvent* a0;
        sipKDualAction *sipCpp;

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, NULL, NULL, "BJ8", &sipSelf, sipType_KDualAction, &sipCpp, sipType_QEvent, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->sipProtectVirt_event(sipSelfWasArg,a0);

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_event, NULL);

    return NULL;
}


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

    {
        const  ::KGuiItem* a0;
         ::KDualAction *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_KDualAction, &sipCpp, sipType_KGuiItem, &a0))
        {
            sipCpp->setActiveGuiItem(*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setActiveGuiItem, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

            sipRes = new  ::KGuiItem(sipCpp->activeGuiItem());

            return sipConvertFromNewType(sipRes,sipType_KGuiItem,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_activeGuiItem, NULL);

    return NULL;
}


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

    {
        const  ::KGuiItem* a0;
         ::KDualAction *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ9", &sipSelf, sipType_KDualAction, &sipCpp, sipType_KGuiItem, &a0))
        {
            sipCpp->setInactiveGuiItem(*a0);

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setInactiveGuiItem, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

            sipRes = new  ::KGuiItem(sipCpp->inactiveGuiItem());

            return sipConvertFromNewType(sipRes,sipType_KGuiItem,NULL);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_inactiveGuiItem, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setActiveIcon, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_activeIcon, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setInactiveIcon, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_inactiveIcon, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setActiveText, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_activeText, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setInactiveText, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_inactiveText, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setActiveToolTip, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_activeToolTip, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setInactiveToolTip, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

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

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

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_inactiveToolTip, NULL);

    return NULL;
}


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

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

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setIconForStates, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

            sipRes = sipCpp->isActive();

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_isActive, NULL);

    return NULL;
}


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

    {
        bool a0;
         ::KDualAction *sipCpp;

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setAutoToggle, NULL);

    return NULL;
}


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

    {
        const  ::KDualAction *sipCpp;

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

            sipRes = sipCpp->autoToggle();

            return PyBool_FromLong(sipRes);
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_autoToggle, NULL);

    return NULL;
}


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

    {
        bool a0;
         ::KDualAction *sipCpp;

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

            Py_INCREF(Py_None);
            return Py_None;
        }
    }

    /* Raise an exception if the arguments couldn't be parsed. */
    sipNoMethod(sipParseErr, sipName_KDualAction, sipName_setActive, NULL);

    return NULL;
}


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

    if (targetType == sipType_QAction)
        return static_cast< ::QAction *>(sipCpp);

    if (targetType == sipType_QObject)
        return static_cast< ::QObject *>(sipCpp);

    return sipCppV;
}


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

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


extern "C" {static void dealloc_KDualAction(sipSimpleWrapper *);}
static void dealloc_KDualAction(sipSimpleWrapper *sipSelf)
{
    if (sipIsDerivedClass(sipSelf))
        reinterpret_cast<sipKDualAction *>(sipGetAddress(sipSelf))->sipPySelf = NULL;

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


extern "C" {static void *init_type_KDualAction(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_KDualAction(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **sipOwner, PyObject **sipParseErr)
{
    sipKDualAction *sipCpp = 0;

    {
         ::QObject* a0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "JH", sipType_QObject, &a0, sipOwner))
        {
            sipCpp = new sipKDualAction(a0);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    {
        const  ::QString* a0;
        int a0State = 0;
        const  ::QString* a1;
        int a1State = 0;
         ::QObject* a2;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, NULL, sipUnused, "J1J1JH", sipType_QString,&a0, &a0State, sipType_QString,&a1, &a1State, sipType_QObject, &a2, sipOwner))
        {
            sipCpp = new sipKDualAction(*a0,*a1,a2);
            sipReleaseType(const_cast< ::QString *>(a0),sipType_QString,a0State);
            sipReleaseType(const_cast< ::QString *>(a1),sipType_QString,a1State);

            sipCpp->sipPySelf = sipSelf;

            return sipCpp;
        }
    }

    return NULL;
}


/* Define this type's super-types. */
static sipEncodedTypeDef supers_KDualAction[] = {{6, 2, 1}};


static PyMethodDef methods_KDualAction[] = {
    {SIP_MLNAME_CAST(sipName_activeGuiItem), meth_KDualAction_activeGuiItem, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_activeIcon), meth_KDualAction_activeIcon, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_activeText), meth_KDualAction_activeText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_activeToolTip), meth_KDualAction_activeToolTip, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_autoToggle), meth_KDualAction_autoToggle, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_childEvent), (PyCFunction)meth_KDualAction_childEvent, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_connectNotify), (PyCFunction)meth_KDualAction_connectNotify, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_customEvent), (PyCFunction)meth_KDualAction_customEvent, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_disconnectNotify), (PyCFunction)meth_KDualAction_disconnectNotify, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_event), (PyCFunction)meth_KDualAction_event, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_inactiveGuiItem), meth_KDualAction_inactiveGuiItem, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_inactiveIcon), meth_KDualAction_inactiveIcon, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_inactiveText), meth_KDualAction_inactiveText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_inactiveToolTip), meth_KDualAction_inactiveToolTip, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isActive), meth_KDualAction_isActive, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_isSignalConnected), (PyCFunction)meth_KDualAction_isSignalConnected, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_receivers), (PyCFunction)meth_KDualAction_receivers, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_sender), (PyCFunction)meth_KDualAction_sender, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_senderSignalIndex), (PyCFunction)meth_KDualAction_senderSignalIndex, METH_VARARGS|METH_KEYWORDS, NULL},
    {SIP_MLNAME_CAST(sipName_setActive), meth_KDualAction_setActive, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setActiveGuiItem), meth_KDualAction_setActiveGuiItem, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setActiveIcon), meth_KDualAction_setActiveIcon, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setActiveText), meth_KDualAction_setActiveText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setActiveToolTip), meth_KDualAction_setActiveToolTip, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setAutoToggle), meth_KDualAction_setAutoToggle, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setIconForStates), meth_KDualAction_setIconForStates, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setInactiveGuiItem), meth_KDualAction_setInactiveGuiItem, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setInactiveIcon), meth_KDualAction_setInactiveIcon, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setInactiveText), meth_KDualAction_setInactiveText, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_setInactiveToolTip), meth_KDualAction_setInactiveToolTip, METH_VARARGS, NULL},
    {SIP_MLNAME_CAST(sipName_timerEvent), (PyCFunction)meth_KDualAction_timerEvent, METH_VARARGS|METH_KEYWORDS, NULL}
};


/* Define this type's signals. */
static const pyqt5QtSignal signals_KDualAction[] = {
    {"activeChangedByUser(bool)", 0, 0, 0},
    {"activeChanged(bool)", 0, 0, 0},
    {0, 0, 0, 0}
};


static pyqt5ClassPluginDef plugin_KDualAction = {
    & ::KDualAction::staticMetaObject,
    0,
    signals_KDualAction,
    0
};


sipClassTypeDef sipTypeDef_KWidgetsAddons_KDualAction = {
    {
        -1,
        0,
        0,
        SIP_TYPE_SCC|SIP_TYPE_SUPER_INIT|SIP_TYPE_CLASS,
        sipNameNr_KDualAction,
        {0},
        &plugin_KDualAction
    },
    {
        sipNameNr_KDualAction,
        {0, 0, 1},
        31, methods_KDualAction,
        0, 0,
        0, 0,
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    0,
    -1,
    -1,
    supers_KDualAction,
    0,
    init_type_KDualAction,
    0,
    0,
#if PY_MAJOR_VERSION >= 3
    0,
    0,
#else
    0,
    0,
    0,
    0,
#endif
    dealloc_KDualAction,
    0,
    0,
    0,
    release_KDualAction,
    cast_KDualAction,
    0,
    0,
    0,
    0,
    0,
    0
};
