//Auto-generated by /usr/bin/smokegen. DO NOT EDIT.
#include <kparts_includes.h>
#include <typeinfo>

#include <smoke.h>
#include <kparts_smoke.h>

class __internal_SmokeClass {};

namespace __smokekparts {

class x_KParts__Part : public KParts::Part, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual const QMetaObject* metaObject() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            const QMetaObject* xret = ((const x_KParts__Part*)this)->KParts::Part::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_KParts__Part*)this)->metaObject();
            x[0].s_class = (void*)xret;
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual void* qt_metacast(const char*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            void* xret = this->KParts::Part::qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = this->qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    static void x_3(Smoke::Stack x) {
        // static QString tr(const char*, const char*)
        QString xret = KParts::Part::tr((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*)
        QString xret = KParts::Part::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // static QString tr(const char*, const char*, int)
        QString xret = KParts::Part::tr((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_6(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*, int)
        QString xret = KParts::Part::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual int qt_metacall(QMetaObject::Call, int, void**)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            int xret = this->KParts::Part::qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        } else {
            int xret = this->qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // KParts::Part* Part(QObject*)
        x_KParts__Part* xret = new x_KParts__Part((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_KParts__Part(QObject* x1) : Part(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual void embed(QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::embed((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->embed((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_10(Smoke::Stack x) {
        // virtual QWidget* widget()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            QWidget* xret = this->KParts::Part::widget();
            x[0].s_class = (void*)xret;
        } else {
            QWidget* xret = this->widget();
            x[0].s_class = (void*)xret;
        }
    }
    void x_11(Smoke::Stack x) {
        // virtual void setManager(KParts::PartManager*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::setManager((KParts::PartManager*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setManager((KParts::PartManager*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // KParts::PartManager* manager() const
        KParts::PartManager* xret = ((const x_KParts__Part*)this)->KParts::Part::manager();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // void setAutoDeleteWidget(bool)
        this->KParts::Part::setAutoDeleteWidget((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void setAutoDeletePart(bool)
        this->KParts::Part::setAutoDeletePart((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // virtual KParts::Part* hitTest(QWidget*, const QPoint&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            KParts::Part* xret = this->KParts::Part::hitTest((QWidget*)x[1].s_class,*(const QPoint*)x[2].s_class);
            x[0].s_class = (void*)xret;
        } else {
            KParts::Part* xret = this->hitTest((QWidget*)x[1].s_class,*(const QPoint*)x[2].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual void setSelectable(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::setSelectable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSelectable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // bool isSelectable() const
        bool xret = ((const x_KParts__Part*)this)->KParts::Part::isSelectable();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // KIconLoader* iconLoader()
        KIconLoader* xret = this->KParts::Part::iconLoader();
        x[0].s_class = (void*)xret;
    }
    void x_19(Smoke::Stack x) {
        // void setWindowCaption(const QString&)
        this->KParts::Part::setWindowCaption(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void setStatusBarText(const QString&)
        this->KParts::Part::setStatusBarText(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // virtual void setWidget(QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::setWidget((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setWidget((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_22(Smoke::Stack x) {
        // virtual void customEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::customEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->customEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_23(Smoke::Stack x) {
        // virtual void partActivateEvent(KParts::PartActivateEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::partActivateEvent((KParts::PartActivateEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->partActivateEvent((KParts::PartActivateEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_24(Smoke::Stack x) {
        // virtual void partSelectEvent(KParts::PartSelectEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::partSelectEvent((KParts::PartSelectEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->partSelectEvent((KParts::PartSelectEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // virtual void guiActivateEvent(KParts::GUIActivateEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<KParts::Part*>(this))) {
            this->KParts::Part::guiActivateEvent((KParts::GUIActivateEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->guiActivateEvent((KParts::GUIActivateEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_26(Smoke::Stack x) {
        // QWidget* hostContainer(const QString&)
        QWidget* xret = this->KParts::Part::hostContainer(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    void x_27(Smoke::Stack x) {
        // void loadPlugins()
        this->KParts::Part::loadPlugins();
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // void loadPlugins(QObject*, KXMLGUIClient*, const KComponentData&)
        this->KParts::Part::loadPlugins((QObject*)x[1].s_class,(KXMLGUIClient*)x[2].s_class,*(const KComponentData*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void slotWidgetDestroyed()
        this->KParts::Part::slotWidgetDestroyed();
        (void)x; // noop (for compiler warning)
    }
    static void x_30(Smoke::Stack x) {
        // KParts::Part* Part(KParts::PartPrivate&, QObject*)
        x_KParts__Part* xret = new x_KParts__Part(*(KParts::PartPrivate*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_KParts__Part(KParts::PartPrivate& x1, QObject* x2) : Part(x1, x2) {}
    static void x_31(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = KParts::Part::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_32(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = KParts::Part::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_33(Smoke::Stack x) {
        // KParts::Part* Part()
        x_KParts__Part* xret = new x_KParts__Part((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_34(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&KParts::Part::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(329, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->KParts::Part::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(330, (void*)this, x)) return (void*)x[0].s_class;
        return this->KParts::Part::qt_metacast(x1);
    }
    virtual int qt_metacall(QMetaObject::Call x1, int x2, void** x3) {
        Smoke::StackItem x[4];
        x[1].s_enum = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(335, (void*)this, x)) return (int)x[0].s_int;
        return this->KParts::Part::qt_metacall(x1, x2, x3);
    }
    virtual void embed(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(337, (void*)this, x)) return;
        this->KParts::Part::embed(x1);
    }
    virtual QWidget* widget() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(338, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->KParts::Part::widget();
    }
    virtual void setManager(KParts::PartManager* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(339, (void*)this, x)) return;
        this->KParts::Part::setManager(x1);
    }
    virtual KParts::Part* hitTest(QWidget* x1, const QPoint& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(343, (void*)this, x)) return (KParts::Part*)x[0].s_class;
        return this->KParts::Part::hitTest(x1, x2);
    }
    virtual void setSelectable(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(344, (void*)this, x)) return;
        this->KParts::Part::setSelectable(x1);
    }
    virtual void setWidget(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(349, (void*)this, x)) return;
        this->KParts::Part::setWidget(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(350, (void*)this, x)) return;
        this->KParts::Part::customEvent(x1);
    }
    virtual void partActivateEvent(KParts::PartActivateEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(351, (void*)this, x)) return;
        this->KParts::Part::partActivateEvent(x1);
    }
    virtual void partSelectEvent(KParts::PartSelectEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(352, (void*)this, x)) return;
        this->KParts::Part::partSelectEvent(x1);
    }
    virtual void guiActivateEvent(KParts::GUIActivateEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(353, (void*)this, x)) return;
        this->KParts::Part::guiActivateEvent(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1036, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(1037, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1038, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1039, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1041, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1042, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual void setComponentData(const KComponentData& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(374, (void*)this, x)) return;
        this->KParts::PartBase::setComponentData(x1);
    }
    virtual void setComponentData(const KComponentData& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(375, (void*)this, x)) return;
        this->KParts::PartBase::setComponentData(x1, x2);
    }
    virtual QAction* action(const QDomElement& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(604, (void*)this, x)) return (QAction*)x[0].s_class;
        return this->KXMLGUIClient::action(x1);
    }
    virtual KActionCollection* actionCollection() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(605, (void*)this, x)) return (KActionCollection*)x[0].s_class;
        return this->KXMLGUIClient::actionCollection();
    }
    virtual KComponentData componentData() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(606, (void*)this, x)) {
            KComponentData* xptr = (KComponentData*)x[0].s_class;
            KComponentData xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KXMLGUIClient::componentData();
    }
    virtual QDomDocument domDocument() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(607, (void*)this, x)) {
            QDomDocument* xptr = (QDomDocument*)x[0].s_class;
            QDomDocument xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KXMLGUIClient::domDocument();
    }
    virtual QString xmlFile() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(608, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KXMLGUIClient::xmlFile();
    }
    virtual QString localXMLFile() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(609, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KXMLGUIClient::localXMLFile();
    }
    virtual void setXMLFile(const QString& x1, bool x2, bool x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        x[3].s_bool = x3;
        if (this->_binding->callMethod(610, (void*)this, x)) return;
        this->KXMLGUIClient::setXMLFile(x1, x2, x3);
    }
    virtual void setLocalXMLFile(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(611, (void*)this, x)) return;
        this->KXMLGUIClient::setLocalXMLFile(x1);
    }
    virtual void setXML(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(612, (void*)this, x)) return;
        this->KXMLGUIClient::setXML(x1, x2);
    }
    virtual void setDOMDocument(const QDomDocument& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(613, (void*)this, x)) return;
        this->KXMLGUIClient::setDOMDocument(x1, x2);
    }
    virtual void stateChanged(const QString& x1, KXMLGUIClient::ReverseStateChange x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(614, (void*)this, x)) return;
        this->KXMLGUIClient::stateChanged(x1, x2);
    }
    virtual void virtual_hook(int x1, void* x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(615, (void*)this, x)) return;
        this->KXMLGUIClient::virtual_hook(x1, x2);
    }
    ~x_KParts__Part() { this->_binding->deleted(25, (void*)this); }
};
void xcall_KParts__Part(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_KParts__Part *xself = (x_KParts__Part*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: x_KParts__Part::x_3(args);	break;
        case 4: x_KParts__Part::x_4(args);	break;
        case 5: x_KParts__Part::x_5(args);	break;
        case 6: x_KParts__Part::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_KParts__Part::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: x_KParts__Part::x_30(args);	break;
        case 31: x_KParts__Part::x_31(args);	break;
        case 32: x_KParts__Part::x_32(args);	break;
        case 33: x_KParts__Part::x_33(args);	break;
        case 34: x_KParts__Part::x_34(args);	break;
        case 35: delete (KParts::Part*)xself;	break;
    }
}

}
