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

#include <smoke.h>
#include <akonadi_smoke.h>

class __internal_SmokeClass {};

namespace __smokeakonadi {

class x_Akonadi__ContactDefaultActions : public Akonadi::ContactDefaultActions, 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<Akonadi::ContactDefaultActions*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactDefaultActions*)this)->Akonadi::ContactDefaultActions::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactDefaultActions*)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<Akonadi::ContactDefaultActions*>(this))) {
            void* xret = this->Akonadi::ContactDefaultActions::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 = Akonadi::ContactDefaultActions::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 = Akonadi::ContactDefaultActions::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 = Akonadi::ContactDefaultActions::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 = Akonadi::ContactDefaultActions::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<Akonadi::ContactDefaultActions*>(this))) {
            int xret = this->Akonadi::ContactDefaultActions::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) {
        // Akonadi::ContactDefaultActions* ContactDefaultActions(QObject*)
        x_Akonadi__ContactDefaultActions* xret = new x_Akonadi__ContactDefaultActions((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactDefaultActions(QObject* x1) : ContactDefaultActions(x1) {}
    void x_9(Smoke::Stack x) {
        // void connectToView(QObject*)
        this->Akonadi::ContactDefaultActions::connectToView((QObject*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void showUrl(const KUrl&)
        this->Akonadi::ContactDefaultActions::showUrl(*(const KUrl*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void sendEmail(const QString&, const QString&)
        this->Akonadi::ContactDefaultActions::sendEmail(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void dialPhoneNumber(const KABC::PhoneNumber&)
        this->Akonadi::ContactDefaultActions::dialPhoneNumber(*(const KABC::PhoneNumber*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // void sendSms(const KABC::PhoneNumber&)
        this->Akonadi::ContactDefaultActions::sendSms(*(const KABC::PhoneNumber*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void showAddress(const KABC::Address&)
        this->Akonadi::ContactDefaultActions::showAddress(*(const KABC::Address*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_15(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactDefaultActions::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_16(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactDefaultActions::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // Akonadi::ContactDefaultActions* ContactDefaultActions()
        x_Akonadi__ContactDefaultActions* xret = new x_Akonadi__ContactDefaultActions((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactDefaultActions::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(861, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactDefaultActions::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(862, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactDefaultActions::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(867, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactDefaultActions::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2686, (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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_Akonadi__ContactDefaultActions() { this->_binding->deleted(47, (void*)this); }
};
void xcall_Akonadi__ContactDefaultActions(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactDefaultActions *xself = (x_Akonadi__ContactDefaultActions*)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_Akonadi__ContactDefaultActions::x_3(args);	break;
        case 4: x_Akonadi__ContactDefaultActions::x_4(args);	break;
        case 5: x_Akonadi__ContactDefaultActions::x_5(args);	break;
        case 6: x_Akonadi__ContactDefaultActions::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactDefaultActions::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: x_Akonadi__ContactDefaultActions::x_15(args);	break;
        case 16: x_Akonadi__ContactDefaultActions::x_16(args);	break;
        case 17: x_Akonadi__ContactDefaultActions::x_17(args);	break;
        case 18: x_Akonadi__ContactDefaultActions::x_18(args);	break;
        case 19: delete (Akonadi::ContactDefaultActions*)xself;	break;
    }
}
class x_Akonadi__ContactEditor : public Akonadi::ContactEditor, 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<Akonadi::ContactEditor*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactEditor*)this)->Akonadi::ContactEditor::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactEditor*)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<Akonadi::ContactEditor*>(this))) {
            void* xret = this->Akonadi::ContactEditor::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 = Akonadi::ContactEditor::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 = Akonadi::ContactEditor::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 = Akonadi::ContactEditor::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 = Akonadi::ContactEditor::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<Akonadi::ContactEditor*>(this))) {
            int xret = this->Akonadi::ContactEditor::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) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode, QWidget*)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditor(Akonadi::ContactEditor::Mode x1, QWidget* x2) : ContactEditor(x1, x2) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode, Akonadi::AbstractContactEditorWidget*, QWidget*)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(Akonadi::AbstractContactEditorWidget*)x[2].s_class,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditor(Akonadi::ContactEditor::Mode x1, Akonadi::AbstractContactEditorWidget* x2, QWidget* x3) : ContactEditor(x1, x2, x3) {}
    static void x_10(Smoke::Stack x) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode, Akonadi::ContactEditor::DisplayMode, QWidget*)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(Akonadi::ContactEditor::DisplayMode)x[2].s_enum,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditor(Akonadi::ContactEditor::Mode x1, Akonadi::ContactEditor::DisplayMode x2, QWidget* x3) : ContactEditor(x1, x2, x3) {}
    void x_11(Smoke::Stack x) {
        // void setContactTemplate(const KABC::Addressee&)
        this->Akonadi::ContactEditor::setContactTemplate(*(const KABC::Addressee*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void setDefaultAddressBook(const Akonadi::Collection&)
        this->Akonadi::ContactEditor::setDefaultAddressBook(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // KABC::Addressee contact()
        KABC::Addressee xret = this->Akonadi::ContactEditor::contact();
        x[0].s_class = (void*)new KABC::Addressee(xret);
    }
    void x_14(Smoke::Stack x) {
        // void loadContact(const Akonadi::Item&)
        this->Akonadi::ContactEditor::loadContact(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // bool saveContact()
        bool xret = this->Akonadi::ContactEditor::saveContact();
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // void saveContactInAddressBook()
        this->Akonadi::ContactEditor::saveContactInAddressBook();
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // void contactStored(const Akonadi::Item&)
        this->Akonadi::ContactEditor::contactStored(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void error(const QString&)
        this->Akonadi::ContactEditor::error(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void finished()
        this->Akonadi::ContactEditor::finished();
        (void)x; // noop (for compiler warning)
    }
    static void x_20(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactEditor::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_21(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactEditor::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_23(Smoke::Stack x) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode, Akonadi::AbstractContactEditorWidget*)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(Akonadi::AbstractContactEditorWidget*)x[2].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_24(Smoke::Stack x) {
        // Akonadi::ContactEditor* ContactEditor(Akonadi::ContactEditor::Mode, Akonadi::ContactEditor::DisplayMode)
        x_Akonadi__ContactEditor* xret = new x_Akonadi__ContactEditor((Akonadi::ContactEditor::Mode)x[1].s_enum,(Akonadi::ContactEditor::DisplayMode)x[2].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_25(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactEditor::staticMetaObject;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditor::CreateMode;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditor::EditMode;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditor::FullMode;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditor::VCardMode;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(880, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactEditor::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(881, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactEditor::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(886, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactEditor::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2772, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2773, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2774, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2783, (void*)this, x)) return;
        this->QWidget::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2791, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2792, (void*)this, x)) return;
        this->QWidget::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2793, (void*)this, x)) return;
        this->QWidget::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2800, (void*)this, x)) return;
        this->QWidget::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2801, (void*)this, x)) return;
        this->QWidget::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 78: //Akonadi::ContactEditor::Mode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactEditor::Mode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactEditor::Mode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactEditor::Mode*)xdata = (Akonadi::ContactEditor::Mode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactEditor::Mode*)xdata;
                    break;
            }
            break;
        case 77: //Akonadi::ContactEditor::DisplayMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactEditor::DisplayMode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactEditor::DisplayMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactEditor::DisplayMode*)xdata = (Akonadi::ContactEditor::DisplayMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactEditor::DisplayMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__ContactEditor() { this->_binding->deleted(48, (void*)this); }
};
void xenum_Akonadi__ContactEditor(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__ContactEditor::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__ContactEditor(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactEditor *xself = (x_Akonadi__ContactEditor*)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_Akonadi__ContactEditor::x_3(args);	break;
        case 4: x_Akonadi__ContactEditor::x_4(args);	break;
        case 5: x_Akonadi__ContactEditor::x_5(args);	break;
        case 6: x_Akonadi__ContactEditor::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactEditor::x_8(args);	break;
        case 9: x_Akonadi__ContactEditor::x_9(args);	break;
        case 10: x_Akonadi__ContactEditor::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: x_Akonadi__ContactEditor::x_20(args);	break;
        case 21: x_Akonadi__ContactEditor::x_21(args);	break;
        case 22: x_Akonadi__ContactEditor::x_22(args);	break;
        case 23: x_Akonadi__ContactEditor::x_23(args);	break;
        case 24: x_Akonadi__ContactEditor::x_24(args);	break;
        case 25: x_Akonadi__ContactEditor::x_25(args);	break;
        case 26: x_Akonadi__ContactEditor::x_26(args);	break;
        case 27: x_Akonadi__ContactEditor::x_27(args);	break;
        case 28: x_Akonadi__ContactEditor::x_28(args);	break;
        case 29: x_Akonadi__ContactEditor::x_29(args);	break;
        case 30: delete (Akonadi::ContactEditor*)xself;	break;
    }
}
class x_Akonadi__ContactEditorDialog : public Akonadi::ContactEditorDialog, 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<Akonadi::ContactEditorDialog*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactEditorDialog*)this)->Akonadi::ContactEditorDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactEditorDialog*)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<Akonadi::ContactEditorDialog*>(this))) {
            void* xret = this->Akonadi::ContactEditorDialog::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 = Akonadi::ContactEditorDialog::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 = Akonadi::ContactEditorDialog::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 = Akonadi::ContactEditorDialog::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 = Akonadi::ContactEditorDialog::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<Akonadi::ContactEditorDialog*>(this))) {
            int xret = this->Akonadi::ContactEditorDialog::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) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode, QWidget*)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditorDialog(Akonadi::ContactEditorDialog::Mode x1, QWidget* x2) : ContactEditorDialog(x1, x2) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode, Akonadi::AbstractContactEditorWidget*, QWidget*)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(Akonadi::AbstractContactEditorWidget*)x[2].s_class,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditorDialog(Akonadi::ContactEditorDialog::Mode x1, Akonadi::AbstractContactEditorWidget* x2, QWidget* x3) : ContactEditorDialog(x1, x2, x3) {}
    static void x_10(Smoke::Stack x) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode, Akonadi::ContactEditorDialog::DisplayMode, QWidget*)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(Akonadi::ContactEditorDialog::DisplayMode)x[2].s_enum,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditorDialog(Akonadi::ContactEditorDialog::Mode x1, Akonadi::ContactEditorDialog::DisplayMode x2, QWidget* x3) : ContactEditorDialog(x1, x2, x3) {}
    void x_11(Smoke::Stack x) {
        // void setContact(const Akonadi::Item&)
        this->Akonadi::ContactEditorDialog::setContact(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void setDefaultAddressBook(const Akonadi::Collection&)
        this->Akonadi::ContactEditorDialog::setDefaultAddressBook(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // Akonadi::ContactEditor* editor() const
        Akonadi::ContactEditor* xret = ((const x_Akonadi__ContactEditorDialog*)this)->Akonadi::ContactEditorDialog::editor();
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // void contactStored(const Akonadi::Item&)
        this->Akonadi::ContactEditorDialog::contactStored(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void error(const QString&)
        this->Akonadi::ContactEditorDialog::error(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void accept()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::ContactEditorDialog*>(this))) {
            this->Akonadi::ContactEditorDialog::accept();
            (void)x; // noop (for compiler warning)
        } else {
            this->accept();
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_17(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactEditorDialog::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_18(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactEditorDialog::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_19(Smoke::Stack x) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_20(Smoke::Stack x) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode, Akonadi::AbstractContactEditorWidget*)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(Akonadi::AbstractContactEditorWidget*)x[2].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_21(Smoke::Stack x) {
        // Akonadi::ContactEditorDialog* ContactEditorDialog(Akonadi::ContactEditorDialog::Mode, Akonadi::ContactEditorDialog::DisplayMode)
        x_Akonadi__ContactEditorDialog* xret = new x_Akonadi__ContactEditorDialog((Akonadi::ContactEditorDialog::Mode)x[1].s_enum,(Akonadi::ContactEditorDialog::DisplayMode)x[2].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_22(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactEditorDialog::staticMetaObject;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditorDialog::CreateMode;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditorDialog::EditMode;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditorDialog::FullMode;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactEditorDialog::VCardMode;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(910, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactEditorDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(911, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactEditorDialog::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(916, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactEditorDialog::qt_metacall(x1, x2, x3);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2495, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2496, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::minimumSizeHint();
    }
    virtual void setCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2497, (void*)this, x)) return;
        this->KDialog::setCaption(x1);
    }
    virtual void setCaption(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(2498, (void*)this, x)) return;
        this->KDialog::setCaption(x1, x2);
    }
    virtual void setPlainCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2499, (void*)this, x)) return;
        this->KDialog::setPlainCaption(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2500, (void*)this, x)) return;
        this->KDialog::hideEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2501, (void*)this, x)) return;
        this->KDialog::closeEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2502, (void*)this, x)) return;
        this->KDialog::keyPressEvent(x1);
    }
    virtual void slotButtonClicked(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2503, (void*)this, x)) return;
        this->KDialog::slotButtonClicked(x1);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2649, (void*)this, x)) return;
        this->QDialog::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(925, (void*)this, x)) return;
        this->Akonadi::ContactEditorDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2651, (void*)this, x)) return;
        this->QDialog::reject();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2648, (void*)this, x)) return;
        this->QDialog::setVisible(x1);
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2653, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2654, (void*)this, x)) return;
        this->QDialog::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2652, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2655, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QDialog::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 81: //Akonadi::ContactEditorDialog::Mode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactEditorDialog::Mode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactEditorDialog::Mode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactEditorDialog::Mode*)xdata = (Akonadi::ContactEditorDialog::Mode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactEditorDialog::Mode*)xdata;
                    break;
            }
            break;
        case 80: //Akonadi::ContactEditorDialog::DisplayMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactEditorDialog::DisplayMode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactEditorDialog::DisplayMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactEditorDialog::DisplayMode*)xdata = (Akonadi::ContactEditorDialog::DisplayMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactEditorDialog::DisplayMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__ContactEditorDialog() { this->_binding->deleted(49, (void*)this); }
};
void xenum_Akonadi__ContactEditorDialog(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__ContactEditorDialog::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__ContactEditorDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactEditorDialog *xself = (x_Akonadi__ContactEditorDialog*)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_Akonadi__ContactEditorDialog::x_3(args);	break;
        case 4: x_Akonadi__ContactEditorDialog::x_4(args);	break;
        case 5: x_Akonadi__ContactEditorDialog::x_5(args);	break;
        case 6: x_Akonadi__ContactEditorDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactEditorDialog::x_8(args);	break;
        case 9: x_Akonadi__ContactEditorDialog::x_9(args);	break;
        case 10: x_Akonadi__ContactEditorDialog::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: x_Akonadi__ContactEditorDialog::x_17(args);	break;
        case 18: x_Akonadi__ContactEditorDialog::x_18(args);	break;
        case 19: x_Akonadi__ContactEditorDialog::x_19(args);	break;
        case 20: x_Akonadi__ContactEditorDialog::x_20(args);	break;
        case 21: x_Akonadi__ContactEditorDialog::x_21(args);	break;
        case 22: x_Akonadi__ContactEditorDialog::x_22(args);	break;
        case 23: x_Akonadi__ContactEditorDialog::x_23(args);	break;
        case 24: x_Akonadi__ContactEditorDialog::x_24(args);	break;
        case 25: x_Akonadi__ContactEditorDialog::x_25(args);	break;
        case 26: x_Akonadi__ContactEditorDialog::x_26(args);	break;
        case 27: delete (Akonadi::ContactEditorDialog*)xself;	break;
    }
}
class x_Akonadi__ContactEditorPagePlugin : public Akonadi::ContactEditorPagePlugin, 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 QString title() const = 0
        QString xret = ((const x_Akonadi__ContactEditorPagePlugin*)this)->title();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_2(Smoke::Stack x) {
        // virtual void loadContact(const KABC::Addressee&) = 0
        this->loadContact(*(const KABC::Addressee*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // virtual void storeContact(KABC::Addressee&) const = 0
        ((const x_Akonadi__ContactEditorPagePlugin*)this)->storeContact(*(KABC::Addressee*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // virtual void setReadOnly(bool) = 0
        this->setReadOnly((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    static void x_5(Smoke::Stack x) {
        // Akonadi::ContactEditorPagePlugin* ContactEditorPagePlugin()
        x_Akonadi__ContactEditorPagePlugin* xret = new x_Akonadi__ContactEditorPagePlugin();
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactEditorPagePlugin() : ContactEditorPagePlugin() {}
    virtual QString title() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(937, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    virtual void loadContact(const KABC::Addressee& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(938, (void*)this, x, true /*pure virtual*/);
    }
    virtual void storeContact(KABC::Addressee& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(939, (void*)this, x, true /*pure virtual*/);
    }
    virtual void setReadOnly(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        this->_binding->callMethod(940, (void*)this, x, true /*pure virtual*/);
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2768, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QWidget::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2769, (void*)this, x)) return (void*)x[0].s_class;
        return this->QWidget::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(2770, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2772, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2773, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2774, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2783, (void*)this, x)) return;
        this->QWidget::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2791, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2792, (void*)this, x)) return;
        this->QWidget::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2793, (void*)this, x)) return;
        this->QWidget::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2800, (void*)this, x)) return;
        this->QWidget::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2801, (void*)this, x)) return;
        this->QWidget::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_Akonadi__ContactEditorPagePlugin() { this->_binding->deleted(50, (void*)this); }
};
void xcall_Akonadi__ContactEditorPagePlugin(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactEditorPagePlugin *xself = (x_Akonadi__ContactEditorPagePlugin*)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: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_Akonadi__ContactEditorPagePlugin::x_5(args);	break;
        case 6: delete (Akonadi::ContactEditorPagePlugin*)xself;	break;
    }
}
class x_Akonadi__ContactGroupEditor : public Akonadi::ContactGroupEditor, 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<Akonadi::ContactGroupEditor*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupEditor*)this)->Akonadi::ContactGroupEditor::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupEditor*)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<Akonadi::ContactGroupEditor*>(this))) {
            void* xret = this->Akonadi::ContactGroupEditor::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 = Akonadi::ContactGroupEditor::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 = Akonadi::ContactGroupEditor::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 = Akonadi::ContactGroupEditor::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 = Akonadi::ContactGroupEditor::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<Akonadi::ContactGroupEditor*>(this))) {
            int xret = this->Akonadi::ContactGroupEditor::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) {
        // Akonadi::ContactGroupEditor* ContactGroupEditor(Akonadi::ContactGroupEditor::Mode, QWidget*)
        x_Akonadi__ContactGroupEditor* xret = new x_Akonadi__ContactGroupEditor((Akonadi::ContactGroupEditor::Mode)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupEditor(Akonadi::ContactGroupEditor::Mode x1, QWidget* x2) : ContactGroupEditor(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // void setContactGroupTemplate(const KABC::ContactGroup&)
        this->Akonadi::ContactGroupEditor::setContactGroupTemplate(*(const KABC::ContactGroup*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setDefaultAddressBook(const Akonadi::Collection&)
        this->Akonadi::ContactGroupEditor::setDefaultAddressBook(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void groupNameIsValid(bool)
        this->Akonadi::ContactGroupEditor::groupNameIsValid((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void loadContactGroup(const Akonadi::Item&)
        this->Akonadi::ContactGroupEditor::loadContactGroup(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // bool saveContactGroup()
        bool xret = this->Akonadi::ContactGroupEditor::saveContactGroup();
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // void contactGroupStored(const Akonadi::Item&)
        this->Akonadi::ContactGroupEditor::contactGroupStored(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void error(const QString&)
        this->Akonadi::ContactGroupEditor::error(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_16(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupEditor::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupEditor::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_18(Smoke::Stack x) {
        // Akonadi::ContactGroupEditor* ContactGroupEditor(Akonadi::ContactGroupEditor::Mode)
        x_Akonadi__ContactGroupEditor* xret = new x_Akonadi__ContactGroupEditor((Akonadi::ContactGroupEditor::Mode)x[1].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_19(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupEditor::staticMetaObject;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupEditor::CreateMode;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupEditor::EditMode;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(943, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupEditor::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(944, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupEditor::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(949, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupEditor::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2772, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2773, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2774, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2783, (void*)this, x)) return;
        this->QWidget::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2791, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2792, (void*)this, x)) return;
        this->QWidget::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2793, (void*)this, x)) return;
        this->QWidget::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2800, (void*)this, x)) return;
        this->QWidget::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2801, (void*)this, x)) return;
        this->QWidget::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 84: //Akonadi::ContactGroupEditor::Mode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactGroupEditor::Mode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactGroupEditor::Mode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactGroupEditor::Mode*)xdata = (Akonadi::ContactGroupEditor::Mode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactGroupEditor::Mode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__ContactGroupEditor() { this->_binding->deleted(51, (void*)this); }
};
void xenum_Akonadi__ContactGroupEditor(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__ContactGroupEditor::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__ContactGroupEditor(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupEditor *xself = (x_Akonadi__ContactGroupEditor*)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_Akonadi__ContactGroupEditor::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupEditor::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupEditor::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupEditor::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupEditor::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: x_Akonadi__ContactGroupEditor::x_16(args);	break;
        case 17: x_Akonadi__ContactGroupEditor::x_17(args);	break;
        case 18: x_Akonadi__ContactGroupEditor::x_18(args);	break;
        case 19: x_Akonadi__ContactGroupEditor::x_19(args);	break;
        case 20: x_Akonadi__ContactGroupEditor::x_20(args);	break;
        case 21: x_Akonadi__ContactGroupEditor::x_21(args);	break;
        case 22: delete (Akonadi::ContactGroupEditor*)xself;	break;
    }
}
class x_Akonadi__ContactGroupEditorDialog : public Akonadi::ContactGroupEditorDialog, 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<Akonadi::ContactGroupEditorDialog*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupEditorDialog*)this)->Akonadi::ContactGroupEditorDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupEditorDialog*)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<Akonadi::ContactGroupEditorDialog*>(this))) {
            void* xret = this->Akonadi::ContactGroupEditorDialog::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 = Akonadi::ContactGroupEditorDialog::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 = Akonadi::ContactGroupEditorDialog::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 = Akonadi::ContactGroupEditorDialog::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 = Akonadi::ContactGroupEditorDialog::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<Akonadi::ContactGroupEditorDialog*>(this))) {
            int xret = this->Akonadi::ContactGroupEditorDialog::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) {
        // Akonadi::ContactGroupEditorDialog* ContactGroupEditorDialog(Akonadi::ContactGroupEditorDialog::Mode, QWidget*)
        x_Akonadi__ContactGroupEditorDialog* xret = new x_Akonadi__ContactGroupEditorDialog((Akonadi::ContactGroupEditorDialog::Mode)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupEditorDialog(Akonadi::ContactGroupEditorDialog::Mode x1, QWidget* x2) : ContactGroupEditorDialog(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // void setContactGroup(const Akonadi::Item&)
        this->Akonadi::ContactGroupEditorDialog::setContactGroup(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setDefaultAddressBook(const Akonadi::Collection&)
        this->Akonadi::ContactGroupEditorDialog::setDefaultAddressBook(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // Akonadi::ContactGroupEditor* editor() const
        Akonadi::ContactGroupEditor* xret = ((const x_Akonadi__ContactGroupEditorDialog*)this)->Akonadi::ContactGroupEditorDialog::editor();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // void contactGroupStored(const Akonadi::Item&)
        this->Akonadi::ContactGroupEditorDialog::contactGroupStored(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // virtual void slotButtonClicked(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::ContactGroupEditorDialog*>(this))) {
            this->Akonadi::ContactGroupEditorDialog::slotButtonClicked((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->slotButtonClicked((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_14(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupEditorDialog::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_15(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupEditorDialog::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_16(Smoke::Stack x) {
        // Akonadi::ContactGroupEditorDialog* ContactGroupEditorDialog(Akonadi::ContactGroupEditorDialog::Mode)
        x_Akonadi__ContactGroupEditorDialog* xret = new x_Akonadi__ContactGroupEditorDialog((Akonadi::ContactGroupEditorDialog::Mode)x[1].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_17(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupEditorDialog::staticMetaObject;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupEditorDialog::CreateMode;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupEditorDialog::EditMode;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(965, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupEditorDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(966, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupEditorDialog::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(971, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupEditorDialog::qt_metacall(x1, x2, x3);
    }
    virtual void slotButtonClicked(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(977, (void*)this, x)) return;
        this->Akonadi::ContactGroupEditorDialog::slotButtonClicked(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2495, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2496, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::minimumSizeHint();
    }
    virtual void setCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2497, (void*)this, x)) return;
        this->KDialog::setCaption(x1);
    }
    virtual void setCaption(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(2498, (void*)this, x)) return;
        this->KDialog::setCaption(x1, x2);
    }
    virtual void setPlainCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2499, (void*)this, x)) return;
        this->KDialog::setPlainCaption(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2500, (void*)this, x)) return;
        this->KDialog::hideEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2501, (void*)this, x)) return;
        this->KDialog::closeEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2502, (void*)this, x)) return;
        this->KDialog::keyPressEvent(x1);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2649, (void*)this, x)) return;
        this->QDialog::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2650, (void*)this, x)) return;
        this->QDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2651, (void*)this, x)) return;
        this->QDialog::reject();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2648, (void*)this, x)) return;
        this->QDialog::setVisible(x1);
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2653, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2654, (void*)this, x)) return;
        this->QDialog::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2652, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2655, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QDialog::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 86: //Akonadi::ContactGroupEditorDialog::Mode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactGroupEditorDialog::Mode;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactGroupEditorDialog::Mode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactGroupEditorDialog::Mode*)xdata = (Akonadi::ContactGroupEditorDialog::Mode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactGroupEditorDialog::Mode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__ContactGroupEditorDialog() { this->_binding->deleted(52, (void*)this); }
};
void xenum_Akonadi__ContactGroupEditorDialog(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__ContactGroupEditorDialog::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__ContactGroupEditorDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupEditorDialog *xself = (x_Akonadi__ContactGroupEditorDialog*)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_Akonadi__ContactGroupEditorDialog::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupEditorDialog::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupEditorDialog::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupEditorDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupEditorDialog::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: x_Akonadi__ContactGroupEditorDialog::x_14(args);	break;
        case 15: x_Akonadi__ContactGroupEditorDialog::x_15(args);	break;
        case 16: x_Akonadi__ContactGroupEditorDialog::x_16(args);	break;
        case 17: x_Akonadi__ContactGroupEditorDialog::x_17(args);	break;
        case 18: x_Akonadi__ContactGroupEditorDialog::x_18(args);	break;
        case 19: x_Akonadi__ContactGroupEditorDialog::x_19(args);	break;
        case 20: delete (Akonadi::ContactGroupEditorDialog*)xself;	break;
    }
}
class x_Akonadi__ContactGroupExpandJob : public Akonadi::ContactGroupExpandJob, 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<Akonadi::ContactGroupExpandJob*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupExpandJob*)this)->Akonadi::ContactGroupExpandJob::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupExpandJob*)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<Akonadi::ContactGroupExpandJob*>(this))) {
            void* xret = this->Akonadi::ContactGroupExpandJob::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 = Akonadi::ContactGroupExpandJob::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 = Akonadi::ContactGroupExpandJob::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 = Akonadi::ContactGroupExpandJob::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 = Akonadi::ContactGroupExpandJob::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<Akonadi::ContactGroupExpandJob*>(this))) {
            int xret = this->Akonadi::ContactGroupExpandJob::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) {
        // Akonadi::ContactGroupExpandJob* ContactGroupExpandJob(const KABC::ContactGroup&, QObject*)
        x_Akonadi__ContactGroupExpandJob* xret = new x_Akonadi__ContactGroupExpandJob(*(const KABC::ContactGroup*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupExpandJob(const KABC::ContactGroup& x1, QObject* x2) : ContactGroupExpandJob(x1, x2) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::ContactGroupExpandJob* ContactGroupExpandJob(const QString&, QObject*)
        x_Akonadi__ContactGroupExpandJob* xret = new x_Akonadi__ContactGroupExpandJob(*(const QString*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupExpandJob(const QString& x1, QObject* x2) : ContactGroupExpandJob(x1, x2) {}
    void x_10(Smoke::Stack x) {
        // KABC::AddresseeList contacts() const
        KABC::AddresseeList xret = ((const x_Akonadi__ContactGroupExpandJob*)this)->Akonadi::ContactGroupExpandJob::contacts();
        x[0].s_class = (void*)new KABC::AddresseeList(xret);
    }
    void x_11(Smoke::Stack x) {
        // virtual void start()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::ContactGroupExpandJob*>(this))) {
            this->Akonadi::ContactGroupExpandJob::start();
            (void)x; // noop (for compiler warning)
        } else {
            this->start();
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_12(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupExpandJob::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupExpandJob::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // Akonadi::ContactGroupExpandJob* ContactGroupExpandJob(const KABC::ContactGroup&)
        x_Akonadi__ContactGroupExpandJob* xret = new x_Akonadi__ContactGroupExpandJob(*(const KABC::ContactGroup*)x[1].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_15(Smoke::Stack x) {
        // Akonadi::ContactGroupExpandJob* ContactGroupExpandJob(const QString&)
        x_Akonadi__ContactGroupExpandJob* xret = new x_Akonadi__ContactGroupExpandJob(*(const QString*)x[1].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_16(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupExpandJob::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(985, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupExpandJob::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(986, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupExpandJob::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(991, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupExpandJob::qt_metacall(x1, x2, x3);
    }
    virtual void start() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(995, (void*)this, x)) return;
        this->Akonadi::ContactGroupExpandJob::start();
    }
    virtual bool doKill() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2507, (void*)this, x)) return (bool)x[0].s_bool;
        return this->KJob::doKill();
    }
    virtual bool doSuspend() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2508, (void*)this, x)) return (bool)x[0].s_bool;
        return this->KJob::doSuspend();
    }
    virtual bool doResume() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2509, (void*)this, x)) return (bool)x[0].s_bool;
        return this->KJob::doResume();
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2510, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KJob::errorString();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2686, (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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_Akonadi__ContactGroupExpandJob() { this->_binding->deleted(53, (void*)this); }
};
void xcall_Akonadi__ContactGroupExpandJob(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupExpandJob *xself = (x_Akonadi__ContactGroupExpandJob*)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_Akonadi__ContactGroupExpandJob::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupExpandJob::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupExpandJob::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupExpandJob::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupExpandJob::x_8(args);	break;
        case 9: x_Akonadi__ContactGroupExpandJob::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_Akonadi__ContactGroupExpandJob::x_12(args);	break;
        case 13: x_Akonadi__ContactGroupExpandJob::x_13(args);	break;
        case 14: x_Akonadi__ContactGroupExpandJob::x_14(args);	break;
        case 15: x_Akonadi__ContactGroupExpandJob::x_15(args);	break;
        case 16: x_Akonadi__ContactGroupExpandJob::x_16(args);	break;
        case 17: delete (Akonadi::ContactGroupExpandJob*)xself;	break;
    }
}
class x_Akonadi__ContactGroupSearchJob : public Akonadi::ContactGroupSearchJob, 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<Akonadi::ContactGroupSearchJob*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupSearchJob*)this)->Akonadi::ContactGroupSearchJob::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupSearchJob*)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<Akonadi::ContactGroupSearchJob*>(this))) {
            void* xret = this->Akonadi::ContactGroupSearchJob::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 = Akonadi::ContactGroupSearchJob::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 = Akonadi::ContactGroupSearchJob::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 = Akonadi::ContactGroupSearchJob::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 = Akonadi::ContactGroupSearchJob::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<Akonadi::ContactGroupSearchJob*>(this))) {
            int xret = this->Akonadi::ContactGroupSearchJob::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) {
        // Akonadi::ContactGroupSearchJob* ContactGroupSearchJob(QObject*)
        x_Akonadi__ContactGroupSearchJob* xret = new x_Akonadi__ContactGroupSearchJob((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupSearchJob(QObject* x1) : ContactGroupSearchJob(x1) {}
    void x_9(Smoke::Stack x) {
        // void setQuery(Akonadi::ContactGroupSearchJob::Criterion, const QString&)
        this->Akonadi::ContactGroupSearchJob::setQuery((Akonadi::ContactGroupSearchJob::Criterion)x[1].s_enum,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setQuery(Akonadi::ContactGroupSearchJob::Criterion, const QString&, Akonadi::ContactGroupSearchJob::Match)
        this->Akonadi::ContactGroupSearchJob::setQuery((Akonadi::ContactGroupSearchJob::Criterion)x[1].s_enum,*(const QString*)x[2].s_class,(Akonadi::ContactGroupSearchJob::Match)x[3].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setLimit(int)
        this->Akonadi::ContactGroupSearchJob::setLimit((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QList<KABC::ContactGroup> contactGroups() const
        QList<KABC::ContactGroup> xret = ((const x_Akonadi__ContactGroupSearchJob*)this)->Akonadi::ContactGroupSearchJob::contactGroups();
        x[0].s_class = (void*)new QList<KABC::ContactGroup>(xret);
    }
    static void x_13(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupSearchJob::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupSearchJob::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_15(Smoke::Stack x) {
        // Akonadi::ContactGroupSearchJob* ContactGroupSearchJob()
        x_Akonadi__ContactGroupSearchJob* xret = new x_Akonadi__ContactGroupSearchJob((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_16(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupSearchJob::staticMetaObject;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupSearchJob::Name;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupSearchJob::ExactMatch;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupSearchJob::StartsWithMatch;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::ContactGroupSearchJob::ContainsMatch;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1002, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupSearchJob::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1003, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupSearchJob::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(1008, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupSearchJob::qt_metacall(x1, x2, x3);
    }
    virtual void doHandleResponse(const QByteArray& x1, const QByteArray& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(1760, (void*)this, x)) return;
        this->Akonadi::ItemSearchJob::doHandleResponse(x1, x2);
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1847, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::Job::errorString();
    }
    virtual void doStart() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1759, (void*)this, x)) return;
        this->Akonadi::ItemSearchJob::doStart();
    }
    virtual bool addSubjob(KJob* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1852, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::Job::addSubjob(x1);
    }
    virtual bool removeSubjob(KJob* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1853, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::Job::removeSubjob(x1);
    }
    virtual bool doKill() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1854, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::Job::doKill();
    }
    virtual void slotResult(KJob* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1856, (void*)this, x)) return;
        this->Akonadi::Job::slotResult(x1);
    }
    virtual void slotInfoMessage(KJob* x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(2494, (void*)this, x)) return;
        this->KCompositeJob::slotInfoMessage(x1, x2, x3);
    }
    virtual void start() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1846, (void*)this, x)) return;
        this->Akonadi::Job::start();
    }
    virtual bool doSuspend() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2508, (void*)this, x)) return (bool)x[0].s_bool;
        return this->KJob::doSuspend();
    }
    virtual bool doResume() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2509, (void*)this, x)) return (bool)x[0].s_bool;
        return this->KJob::doResume();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2686, (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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 89: //Akonadi::ContactGroupSearchJob::Criterion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactGroupSearchJob::Criterion;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactGroupSearchJob::Criterion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactGroupSearchJob::Criterion*)xdata = (Akonadi::ContactGroupSearchJob::Criterion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactGroupSearchJob::Criterion*)xdata;
                    break;
            }
            break;
        case 90: //Akonadi::ContactGroupSearchJob::Match
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::ContactGroupSearchJob::Match;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::ContactGroupSearchJob::Match*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::ContactGroupSearchJob::Match*)xdata = (Akonadi::ContactGroupSearchJob::Match)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::ContactGroupSearchJob::Match*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__ContactGroupSearchJob() { this->_binding->deleted(54, (void*)this); }
};
void xenum_Akonadi__ContactGroupSearchJob(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__ContactGroupSearchJob::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__ContactGroupSearchJob(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupSearchJob *xself = (x_Akonadi__ContactGroupSearchJob*)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_Akonadi__ContactGroupSearchJob::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupSearchJob::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupSearchJob::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupSearchJob::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupSearchJob::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: x_Akonadi__ContactGroupSearchJob::x_13(args);	break;
        case 14: x_Akonadi__ContactGroupSearchJob::x_14(args);	break;
        case 15: x_Akonadi__ContactGroupSearchJob::x_15(args);	break;
        case 16: x_Akonadi__ContactGroupSearchJob::x_16(args);	break;
        case 17: x_Akonadi__ContactGroupSearchJob::x_17(args);	break;
        case 18: x_Akonadi__ContactGroupSearchJob::x_18(args);	break;
        case 19: x_Akonadi__ContactGroupSearchJob::x_19(args);	break;
        case 20: x_Akonadi__ContactGroupSearchJob::x_20(args);	break;
        case 21: delete (Akonadi::ContactGroupSearchJob*)xself;	break;
    }
}
class x_Akonadi__ContactGroupViewer : public Akonadi::ContactGroupViewer, 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<Akonadi::ContactGroupViewer*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupViewer*)this)->Akonadi::ContactGroupViewer::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupViewer*)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<Akonadi::ContactGroupViewer*>(this))) {
            void* xret = this->Akonadi::ContactGroupViewer::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 = Akonadi::ContactGroupViewer::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 = Akonadi::ContactGroupViewer::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 = Akonadi::ContactGroupViewer::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 = Akonadi::ContactGroupViewer::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<Akonadi::ContactGroupViewer*>(this))) {
            int xret = this->Akonadi::ContactGroupViewer::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) {
        // Akonadi::ContactGroupViewer* ContactGroupViewer(QWidget*)
        x_Akonadi__ContactGroupViewer* xret = new x_Akonadi__ContactGroupViewer((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupViewer(QWidget* x1) : ContactGroupViewer(x1) {}
    void x_9(Smoke::Stack x) {
        // Akonadi::Item contactGroup() const
        Akonadi::Item xret = ((const x_Akonadi__ContactGroupViewer*)this)->Akonadi::ContactGroupViewer::contactGroup();
        x[0].s_class = (void*)new Akonadi::Item(xret);
    }
    void x_10(Smoke::Stack x) {
        // void setContactGroupFormatter(Akonadi::AbstractContactGroupFormatter*)
        this->Akonadi::ContactGroupViewer::setContactGroupFormatter((Akonadi::AbstractContactGroupFormatter*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setContactGroup(const Akonadi::Item&)
        this->Akonadi::ContactGroupViewer::setContactGroup(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void emailClicked(const QString&, const QString&)
        this->Akonadi::ContactGroupViewer::emailClicked(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_13(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupViewer::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupViewer::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_15(Smoke::Stack x) {
        // Akonadi::ContactGroupViewer* ContactGroupViewer()
        x_Akonadi__ContactGroupViewer* xret = new x_Akonadi__ContactGroupViewer((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_16(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupViewer::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1023, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupViewer::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1024, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupViewer::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(1029, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupViewer::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2772, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2773, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2774, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2783, (void*)this, x)) return;
        this->QWidget::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2791, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2792, (void*)this, x)) return;
        this->QWidget::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2793, (void*)this, x)) return;
        this->QWidget::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2800, (void*)this, x)) return;
        this->QWidget::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2801, (void*)this, x)) return;
        this->QWidget::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2687, (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(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_Akonadi__ContactGroupViewer() { this->_binding->deleted(55, (void*)this); }
};
void xcall_Akonadi__ContactGroupViewer(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupViewer *xself = (x_Akonadi__ContactGroupViewer*)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_Akonadi__ContactGroupViewer::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupViewer::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupViewer::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupViewer::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupViewer::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: x_Akonadi__ContactGroupViewer::x_13(args);	break;
        case 14: x_Akonadi__ContactGroupViewer::x_14(args);	break;
        case 15: x_Akonadi__ContactGroupViewer::x_15(args);	break;
        case 16: x_Akonadi__ContactGroupViewer::x_16(args);	break;
        case 17: delete (Akonadi::ContactGroupViewer*)xself;	break;
    }
}
class x_Akonadi__ContactGroupViewerDialog : public Akonadi::ContactGroupViewerDialog, 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<Akonadi::ContactGroupViewerDialog*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupViewerDialog*)this)->Akonadi::ContactGroupViewerDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__ContactGroupViewerDialog*)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<Akonadi::ContactGroupViewerDialog*>(this))) {
            void* xret = this->Akonadi::ContactGroupViewerDialog::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 = Akonadi::ContactGroupViewerDialog::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 = Akonadi::ContactGroupViewerDialog::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 = Akonadi::ContactGroupViewerDialog::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 = Akonadi::ContactGroupViewerDialog::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<Akonadi::ContactGroupViewerDialog*>(this))) {
            int xret = this->Akonadi::ContactGroupViewerDialog::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) {
        // Akonadi::ContactGroupViewerDialog* ContactGroupViewerDialog(QWidget*)
        x_Akonadi__ContactGroupViewerDialog* xret = new x_Akonadi__ContactGroupViewerDialog((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__ContactGroupViewerDialog(QWidget* x1) : ContactGroupViewerDialog(x1) {}
    void x_9(Smoke::Stack x) {
        // Akonadi::Item contactGroup() const
        Akonadi::Item xret = ((const x_Akonadi__ContactGroupViewerDialog*)this)->Akonadi::ContactGroupViewerDialog::contactGroup();
        x[0].s_class = (void*)new Akonadi::Item(xret);
    }
    void x_10(Smoke::Stack x) {
        // Akonadi::ContactGroupViewer* viewer() const
        Akonadi::ContactGroupViewer* xret = ((const x_Akonadi__ContactGroupViewerDialog*)this)->Akonadi::ContactGroupViewerDialog::viewer();
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // void setContactGroup(const Akonadi::Item&)
        this->Akonadi::ContactGroupViewerDialog::setContactGroup(*(const Akonadi::Item*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_12(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::ContactGroupViewerDialog::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::ContactGroupViewerDialog::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // Akonadi::ContactGroupViewerDialog* ContactGroupViewerDialog()
        x_Akonadi__ContactGroupViewerDialog* xret = new x_Akonadi__ContactGroupViewerDialog((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_15(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::ContactGroupViewerDialog::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1040, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::ContactGroupViewerDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1041, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::ContactGroupViewerDialog::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(1046, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::ContactGroupViewerDialog::qt_metacall(x1, x2, x3);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2495, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2496, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KDialog::minimumSizeHint();
    }
    virtual void setCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2497, (void*)this, x)) return;
        this->KDialog::setCaption(x1);
    }
    virtual void setCaption(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(2498, (void*)this, x)) return;
        this->KDialog::setCaption(x1, x2);
    }
    virtual void setPlainCaption(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2499, (void*)this, x)) return;
        this->KDialog::setPlainCaption(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2500, (void*)this, x)) return;
        this->KDialog::hideEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2501, (void*)this, x)) return;
        this->KDialog::closeEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2502, (void*)this, x)) return;
        this->KDialog::keyPressEvent(x1);
    }
    virtual void slotButtonClicked(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2503, (void*)this, x)) return;
        this->KDialog::slotButtonClicked(x1);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2649, (void*)this, x)) return;
        this->QDialog::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2650, (void*)this, x)) return;
        this->QDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2651, (void*)this, x)) return;
        this->QDialog::reject();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2648, (void*)this, x)) return;
        this->QDialog::setVisible(x1);
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2775, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2778, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2779, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2780, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2781, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2782, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2784, (void*)this, x)) return;
        this->QWidget::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2785, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2786, (void*)this, x)) return;
        this->QWidget::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2787, (void*)this, x)) return;
        this->QWidget::enterEvent(x1);
    }
    virtual void leaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2788, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2789, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2790, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2653, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2654, (void*)this, x)) return;
        this->QDialog::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2794, (void*)this, x)) return;
        this->QWidget::tabletEvent(x1);
    }
    virtual void actionEvent(QActionEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2795, (void*)this, x)) return;
        this->QWidget::actionEvent(x1);
    }
    virtual void dragEnterEvent(QDragEnterEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2796, (void*)this, x)) return;
        this->QWidget::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2797, (void*)this, x)) return;
        this->QWidget::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2798, (void*)this, x)) return;
        this->QWidget::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2799, (void*)this, x)) return;
        this->QWidget::dropEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2652, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2802, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::x11Event(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2803, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2805, (void*)this, x)) return;
        this->QWidget::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2806, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2807, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2808, (void*)this, x)) return;
        this->QWidget::styleChange(x1);
    }
    virtual void enabledChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2809, (void*)this, x)) return;
        this->QWidget::enabledChange(x1);
    }
    virtual void paletteChange(const QPalette& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2810, (void*)this, x)) return;
        this->QWidget::paletteChange(x1);
    }
    virtual void fontChange(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2811, (void*)this, x)) return;
        this->QWidget::fontChange(x1);
    }
    virtual void windowActivationChange(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2812, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2813, (void*)this, x)) return;
        this->QWidget::languageChange();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2777, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::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(2655, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QDialog::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2688, (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(2689, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2690, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2691, (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(2692, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2771, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2776, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QWidget::paintEngine();
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2804, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_Akonadi__ContactGroupViewerDialog() { this->_binding->deleted(56, (void*)this); }
};
void xcall_Akonadi__ContactGroupViewerDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__ContactGroupViewerDialog *xself = (x_Akonadi__ContactGroupViewerDialog*)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_Akonadi__ContactGroupViewerDialog::x_3(args);	break;
        case 4: x_Akonadi__ContactGroupViewerDialog::x_4(args);	break;
        case 5: x_Akonadi__ContactGroupViewerDialog::x_5(args);	break;
        case 6: x_Akonadi__ContactGroupViewerDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__ContactGroupViewerDialog::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: x_Akonadi__ContactGroupViewerDialog::x_12(args);	break;
        case 13: x_Akonadi__ContactGroupViewerDialog::x_13(args);	break;
        case 14: x_Akonadi__ContactGroupViewerDialog::x_14(args);	break;
        case 15: x_Akonadi__ContactGroupViewerDialog::x_15(args);	break;
        case 16: delete (Akonadi::ContactGroupViewerDialog*)xself;	break;
    }
}

}
