//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__CollectionPropertiesDialog : public Akonadi::CollectionPropertiesDialog, 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::CollectionPropertiesDialog*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionPropertiesDialog*)this)->Akonadi::CollectionPropertiesDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionPropertiesDialog*)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::CollectionPropertiesDialog*>(this))) {
            void* xret = this->Akonadi::CollectionPropertiesDialog::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::CollectionPropertiesDialog::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::CollectionPropertiesDialog::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::CollectionPropertiesDialog::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::CollectionPropertiesDialog::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::CollectionPropertiesDialog*>(this))) {
            int xret = this->Akonadi::CollectionPropertiesDialog::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::CollectionPropertiesDialog* CollectionPropertiesDialog(const Akonadi::Collection&, QWidget*)
        x_Akonadi__CollectionPropertiesDialog* xret = new x_Akonadi__CollectionPropertiesDialog(*(const Akonadi::Collection*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionPropertiesDialog(const Akonadi::Collection& x1, QWidget* x2) : CollectionPropertiesDialog(x1, x2) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::CollectionPropertiesDialog* CollectionPropertiesDialog(const Akonadi::Collection&, const QStringList&, QWidget*)
        x_Akonadi__CollectionPropertiesDialog* xret = new x_Akonadi__CollectionPropertiesDialog(*(const Akonadi::Collection*)x[1].s_class,*(const QStringList*)x[2].s_class,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionPropertiesDialog(const Akonadi::Collection& x1, const QStringList& x2, QWidget* x3) : CollectionPropertiesDialog(x1, x2, x3) {}
    static void x_10(Smoke::Stack x) {
        // static void registerPage(Akonadi::CollectionPropertiesPageFactory*)
        Akonadi::CollectionPropertiesDialog::registerPage((Akonadi::CollectionPropertiesPageFactory*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_11(Smoke::Stack x) {
        // static void useDefaultPage(bool)
        Akonadi::CollectionPropertiesDialog::useDefaultPage((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    static void x_12(Smoke::Stack x) {
        // static QString defaultPageObjectName(Akonadi::CollectionPropertiesDialog::DefaultPage)
        QString xret = Akonadi::CollectionPropertiesDialog::defaultPageObjectName((Akonadi::CollectionPropertiesDialog::DefaultPage)x[1].s_enum);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setCurrentPage(const QString&)
        this->Akonadi::CollectionPropertiesDialog::setCurrentPage(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_14(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionPropertiesDialog::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::CollectionPropertiesDialog::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::CollectionPropertiesDialog* CollectionPropertiesDialog(const Akonadi::Collection&)
        x_Akonadi__CollectionPropertiesDialog* xret = new x_Akonadi__CollectionPropertiesDialog(*(const Akonadi::Collection*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_17(Smoke::Stack x) {
        // Akonadi::CollectionPropertiesDialog* CollectionPropertiesDialog(const Akonadi::Collection&, const QStringList&)
        x_Akonadi__CollectionPropertiesDialog* xret = new x_Akonadi__CollectionPropertiesDialog(*(const Akonadi::Collection*)x[1].s_class,*(const QStringList*)x[2].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::CollectionPropertiesDialog::staticMetaObject;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionPropertiesDialog::GeneralPage;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionPropertiesDialog::CachePage;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(679, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionPropertiesDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(680, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionPropertiesDialog::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(685, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionPropertiesDialog::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);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 62: //Akonadi::CollectionPropertiesDialog::DefaultPage
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::CollectionPropertiesDialog::DefaultPage;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::CollectionPropertiesDialog::DefaultPage*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::CollectionPropertiesDialog::DefaultPage*)xdata = (Akonadi::CollectionPropertiesDialog::DefaultPage)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::CollectionPropertiesDialog::DefaultPage*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__CollectionPropertiesDialog() { this->_binding->deleted(37, (void*)this); }
};
void xenum_Akonadi__CollectionPropertiesDialog(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__CollectionPropertiesDialog::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__CollectionPropertiesDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionPropertiesDialog *xself = (x_Akonadi__CollectionPropertiesDialog*)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__CollectionPropertiesDialog::x_3(args);	break;
        case 4: x_Akonadi__CollectionPropertiesDialog::x_4(args);	break;
        case 5: x_Akonadi__CollectionPropertiesDialog::x_5(args);	break;
        case 6: x_Akonadi__CollectionPropertiesDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionPropertiesDialog::x_8(args);	break;
        case 9: x_Akonadi__CollectionPropertiesDialog::x_9(args);	break;
        case 10: x_Akonadi__CollectionPropertiesDialog::x_10(args);	break;
        case 11: x_Akonadi__CollectionPropertiesDialog::x_11(args);	break;
        case 12: x_Akonadi__CollectionPropertiesDialog::x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: x_Akonadi__CollectionPropertiesDialog::x_14(args);	break;
        case 15: x_Akonadi__CollectionPropertiesDialog::x_15(args);	break;
        case 16: x_Akonadi__CollectionPropertiesDialog::x_16(args);	break;
        case 17: x_Akonadi__CollectionPropertiesDialog::x_17(args);	break;
        case 18: x_Akonadi__CollectionPropertiesDialog::x_18(args);	break;
        case 19: x_Akonadi__CollectionPropertiesDialog::x_19(args);	break;
        case 20: x_Akonadi__CollectionPropertiesDialog::x_20(args);	break;
        case 21: delete (Akonadi::CollectionPropertiesDialog*)xself;	break;
    }
}
class x_Akonadi__CollectionPropertiesPage : public Akonadi::CollectionPropertiesPage, 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::CollectionPropertiesPage*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionPropertiesPage*)this)->Akonadi::CollectionPropertiesPage::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionPropertiesPage*)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::CollectionPropertiesPage*>(this))) {
            void* xret = this->Akonadi::CollectionPropertiesPage::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::CollectionPropertiesPage::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::CollectionPropertiesPage::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::CollectionPropertiesPage::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::CollectionPropertiesPage::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::CollectionPropertiesPage*>(this))) {
            int xret = this->Akonadi::CollectionPropertiesPage::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::CollectionPropertiesPage* CollectionPropertiesPage(QWidget*)
        x_Akonadi__CollectionPropertiesPage* xret = new x_Akonadi__CollectionPropertiesPage((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionPropertiesPage(QWidget* x1) : CollectionPropertiesPage(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual void load(const Akonadi::Collection&) = 0
        this->load(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // virtual void save(Akonadi::Collection&) = 0
        this->save(*(Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // virtual bool canHandle(const Akonadi::Collection&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionPropertiesPage*>(this))) {
            bool xret = ((const x_Akonadi__CollectionPropertiesPage*)this)->Akonadi::CollectionPropertiesPage::canHandle(*(const Akonadi::Collection*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_Akonadi__CollectionPropertiesPage*)this)->canHandle(*(const Akonadi::Collection*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_12(Smoke::Stack x) {
        // void setPageTitle(const QString&)
        this->Akonadi::CollectionPropertiesPage::setPageTitle(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // QString pageTitle() const
        QString xret = ((const x_Akonadi__CollectionPropertiesPage*)this)->Akonadi::CollectionPropertiesPage::pageTitle();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionPropertiesPage::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::CollectionPropertiesPage::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::CollectionPropertiesPage* CollectionPropertiesPage()
        x_Akonadi__CollectionPropertiesPage* xret = new x_Akonadi__CollectionPropertiesPage((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::CollectionPropertiesPage::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(700, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionPropertiesPage::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(701, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionPropertiesPage::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(706, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionPropertiesPage::qt_metacall(x1, x2, x3);
    }
    virtual void load(const Akonadi::Collection& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(708, (void*)this, x, true /*pure virtual*/);
    }
    virtual void save(Akonadi::Collection& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(709, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool canHandle(const Akonadi::Collection& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(710, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::CollectionPropertiesPage::canHandle(x1);
    }
    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__CollectionPropertiesPage() { this->_binding->deleted(38, (void*)this); }
};
void xcall_Akonadi__CollectionPropertiesPage(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionPropertiesPage *xself = (x_Akonadi__CollectionPropertiesPage*)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__CollectionPropertiesPage::x_3(args);	break;
        case 4: x_Akonadi__CollectionPropertiesPage::x_4(args);	break;
        case 5: x_Akonadi__CollectionPropertiesPage::x_5(args);	break;
        case 6: x_Akonadi__CollectionPropertiesPage::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionPropertiesPage::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__CollectionPropertiesPage::x_14(args);	break;
        case 15: x_Akonadi__CollectionPropertiesPage::x_15(args);	break;
        case 16: x_Akonadi__CollectionPropertiesPage::x_16(args);	break;
        case 17: x_Akonadi__CollectionPropertiesPage::x_17(args);	break;
        case 18: delete (Akonadi::CollectionPropertiesPage*)xself;	break;
    }
}
class x_Akonadi__CollectionPropertiesPageFactory : public Akonadi::CollectionPropertiesPageFactory, 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 Akonadi::CollectionPropertiesPage* createWidget(QWidget*) const = 0
        Akonadi::CollectionPropertiesPage* xret = ((const x_Akonadi__CollectionPropertiesPageFactory*)this)->createWidget((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_2(Smoke::Stack x) {
        // Akonadi::CollectionPropertiesPageFactory* CollectionPropertiesPageFactory()
        x_Akonadi__CollectionPropertiesPageFactory* xret = new x_Akonadi__CollectionPropertiesPageFactory();
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionPropertiesPageFactory() : CollectionPropertiesPageFactory() {}
    static void x_3(Smoke::Stack x) {
        // Akonadi::CollectionPropertiesPageFactory* CollectionPropertiesPageFactory(const Akonadi::CollectionPropertiesPageFactory&)
        x_Akonadi__CollectionPropertiesPageFactory* xret = new x_Akonadi__CollectionPropertiesPageFactory(*(const Akonadi::CollectionPropertiesPageFactory*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionPropertiesPageFactory(const Akonadi::CollectionPropertiesPageFactory& x1) : CollectionPropertiesPageFactory(x1) {}
    void x_4(Smoke::Stack x) {
        // Akonadi::CollectionPropertiesPage* createWidget() const
        Akonadi::CollectionPropertiesPage* xret = ((const x_Akonadi__CollectionPropertiesPageFactory*)this)->createWidget((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    virtual Akonadi::CollectionPropertiesPage* createWidget(QWidget* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(718, (void*)this, x, true /*pure virtual*/);
        return (Akonadi::CollectionPropertiesPage*)x[0].s_class;
    }
    ~x_Akonadi__CollectionPropertiesPageFactory() { this->_binding->deleted(39, (void*)this); }
};
void xcall_Akonadi__CollectionPropertiesPageFactory(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionPropertiesPageFactory *xself = (x_Akonadi__CollectionPropertiesPageFactory*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: x_Akonadi__CollectionPropertiesPageFactory::x_2(args);	break;
        case 3: x_Akonadi__CollectionPropertiesPageFactory::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (Akonadi::CollectionPropertiesPageFactory*)xself;	break;
    }
}
class x_Akonadi__CollectionQuotaAttribute : public Akonadi::CollectionQuotaAttribute, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // Akonadi::CollectionQuotaAttribute* CollectionQuotaAttribute()
        x_Akonadi__CollectionQuotaAttribute* xret = new x_Akonadi__CollectionQuotaAttribute();
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionQuotaAttribute() : CollectionQuotaAttribute() {}
    static void x_2(Smoke::Stack x) {
        // Akonadi::CollectionQuotaAttribute* CollectionQuotaAttribute(long long, long long)
        x_Akonadi__CollectionQuotaAttribute* xret = new x_Akonadi__CollectionQuotaAttribute(*(long long*)x[1].s_class,*(long long*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionQuotaAttribute(long long x1, long long x2) : CollectionQuotaAttribute(x1, x2) {}
    void x_3(Smoke::Stack x) {
        // void setCurrentValue(long long)
        this->Akonadi::CollectionQuotaAttribute::setCurrentValue(*(long long*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // void setMaximumValue(long long)
        this->Akonadi::CollectionQuotaAttribute::setMaximumValue(*(long long*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // long long currentValue() const
        long long xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->Akonadi::CollectionQuotaAttribute::currentValue();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_6(Smoke::Stack x) {
        // long long maximumValue() const
        long long xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->Akonadi::CollectionQuotaAttribute::maximumValue();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual QByteArray type() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionQuotaAttribute*>(this))) {
            QByteArray xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->Akonadi::CollectionQuotaAttribute::type();
            x[0].s_class = (void*)new QByteArray(xret);
        } else {
            QByteArray xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->type();
            x[0].s_class = (void*)new QByteArray(xret);
        }
    }
    void x_8(Smoke::Stack x) {
        // virtual Akonadi::Attribute* clone() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionQuotaAttribute*>(this))) {
            Akonadi::Attribute* xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->Akonadi::CollectionQuotaAttribute::clone();
            x[0].s_class = (void*)xret;
        } else {
            Akonadi::Attribute* xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->clone();
            x[0].s_class = (void*)xret;
        }
    }
    void x_9(Smoke::Stack x) {
        // virtual QByteArray serialized() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionQuotaAttribute*>(this))) {
            QByteArray xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->Akonadi::CollectionQuotaAttribute::serialized();
            x[0].s_class = (void*)new QByteArray(xret);
        } else {
            QByteArray xret = ((const x_Akonadi__CollectionQuotaAttribute*)this)->serialized();
            x[0].s_class = (void*)new QByteArray(xret);
        }
    }
    void x_10(Smoke::Stack x) {
        // virtual void deserialize(const QByteArray&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionQuotaAttribute*>(this))) {
            this->Akonadi::CollectionQuotaAttribute::deserialize(*(const QByteArray*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->deserialize(*(const QByteArray*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_11(Smoke::Stack x) {
        // Akonadi::CollectionQuotaAttribute* CollectionQuotaAttribute(const Akonadi::CollectionQuotaAttribute&)
        x_Akonadi__CollectionQuotaAttribute* xret = new x_Akonadi__CollectionQuotaAttribute(*(const Akonadi::CollectionQuotaAttribute*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionQuotaAttribute(const Akonadi::CollectionQuotaAttribute& x1) : CollectionQuotaAttribute(x1) {}
    virtual QByteArray type() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(729, (void*)this, x)) {
            QByteArray* xptr = (QByteArray*)x[0].s_class;
            QByteArray xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionQuotaAttribute::type();
    }
    virtual Akonadi::Attribute* clone() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(730, (void*)this, x)) return (Akonadi::Attribute*)x[0].s_class;
        return this->Akonadi::CollectionQuotaAttribute::clone();
    }
    virtual QByteArray serialized() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(731, (void*)this, x)) {
            QByteArray* xptr = (QByteArray*)x[0].s_class;
            QByteArray xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionQuotaAttribute::serialized();
    }
    virtual void deserialize(const QByteArray& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(732, (void*)this, x)) return;
        this->Akonadi::CollectionQuotaAttribute::deserialize(x1);
    }
    ~x_Akonadi__CollectionQuotaAttribute() { this->_binding->deleted(40, (void*)this); }
};
void xcall_Akonadi__CollectionQuotaAttribute(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionQuotaAttribute *xself = (x_Akonadi__CollectionQuotaAttribute*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Akonadi__CollectionQuotaAttribute::x_1(args);	break;
        case 2: x_Akonadi__CollectionQuotaAttribute::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_Akonadi__CollectionQuotaAttribute::x_11(args);	break;
        case 12: delete (Akonadi::CollectionQuotaAttribute*)xself;	break;
    }
}
class x_Akonadi__CollectionRequester : public Akonadi::CollectionRequester, 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::CollectionRequester*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionRequester*)this)->Akonadi::CollectionRequester::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionRequester*)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::CollectionRequester*>(this))) {
            void* xret = this->Akonadi::CollectionRequester::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::CollectionRequester::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::CollectionRequester::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::CollectionRequester::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::CollectionRequester::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::CollectionRequester*>(this))) {
            int xret = this->Akonadi::CollectionRequester::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::CollectionRequester* CollectionRequester(QWidget*)
        x_Akonadi__CollectionRequester* xret = new x_Akonadi__CollectionRequester((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionRequester(QWidget* x1) : CollectionRequester(x1) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::CollectionRequester* CollectionRequester(const Akonadi::Collection&, QWidget*)
        x_Akonadi__CollectionRequester* xret = new x_Akonadi__CollectionRequester(*(const Akonadi::Collection*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionRequester(const Akonadi::Collection& x1, QWidget* x2) : CollectionRequester(x1, x2) {}
    void x_10(Smoke::Stack x) {
        // Akonadi::Collection collection() const
        Akonadi::Collection xret = ((const x_Akonadi__CollectionRequester*)this)->Akonadi::CollectionRequester::collection();
        x[0].s_class = (void*)new Akonadi::Collection(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setMimeTypeFilter(const QStringList&)
        this->Akonadi::CollectionRequester::setMimeTypeFilter(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QStringList mimeTypeFilter() const
        QStringList xret = ((const x_Akonadi__CollectionRequester*)this)->Akonadi::CollectionRequester::mimeTypeFilter();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setAccessRightsFilter(QFlags<Akonadi::Collection::Right>)
        this->Akonadi::CollectionRequester::setAccessRightsFilter((QFlags<Akonadi::Collection::Right>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QFlags<Akonadi::Collection::Right> accessRightsFilter() const
        QFlags<Akonadi::Collection::Right> xret = ((const x_Akonadi__CollectionRequester*)this)->Akonadi::CollectionRequester::accessRightsFilter();
        x[0].s_uint = (uint)xret;
    }
    void x_15(Smoke::Stack x) {
        // void changeCollectionDialogOptions(QFlags<Akonadi::CollectionDialog::CollectionDialogOption>)
        this->Akonadi::CollectionRequester::changeCollectionDialogOptions((QFlags<Akonadi::CollectionDialog::CollectionDialogOption>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionRequester*>(this))) {
            this->Akonadi::CollectionRequester::changeEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->changeEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // void setCollection(const Akonadi::Collection&)
        this->Akonadi::CollectionRequester::setCollection(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void collectionChanged(const Akonadi::Collection&)
        this->Akonadi::CollectionRequester::collectionChanged(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_19(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionRequester::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_20(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::CollectionRequester::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_21(Smoke::Stack x) {
        // Akonadi::CollectionRequester* CollectionRequester()
        x_Akonadi__CollectionRequester* xret = new x_Akonadi__CollectionRequester((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_22(Smoke::Stack x) {
        // Akonadi::CollectionRequester* CollectionRequester(const Akonadi::Collection&)
        x_Akonadi__CollectionRequester* xret = new x_Akonadi__CollectionRequester(*(const Akonadi::Collection*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_23(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::CollectionRequester::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(735, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionRequester::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(736, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionRequester::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(741, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionRequester::qt_metacall(x1, x2, x3);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2504, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KHBox::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2505, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->KHBox::minimumSizeHint();
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2506, (void*)this, x)) return;
        this->KHBox::childEvent(x1);
    }
    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 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(2657, (void*)this, x)) return;
        this->QFrame::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(750, (void*)this, x)) return;
        this->Akonadi::CollectionRequester::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(2656, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFrame::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 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__CollectionRequester() { this->_binding->deleted(41, (void*)this); }
};
void xcall_Akonadi__CollectionRequester(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionRequester *xself = (x_Akonadi__CollectionRequester*)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__CollectionRequester::x_3(args);	break;
        case 4: x_Akonadi__CollectionRequester::x_4(args);	break;
        case 5: x_Akonadi__CollectionRequester::x_5(args);	break;
        case 6: x_Akonadi__CollectionRequester::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionRequester::x_8(args);	break;
        case 9: x_Akonadi__CollectionRequester::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: x_Akonadi__CollectionRequester::x_19(args);	break;
        case 20: x_Akonadi__CollectionRequester::x_20(args);	break;
        case 21: x_Akonadi__CollectionRequester::x_21(args);	break;
        case 22: x_Akonadi__CollectionRequester::x_22(args);	break;
        case 23: x_Akonadi__CollectionRequester::x_23(args);	break;
        case 24: delete (Akonadi::CollectionRequester*)xself;	break;
    }
}
class x_Akonadi__CollectionStatistics : public Akonadi::CollectionStatistics {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // Akonadi::CollectionStatistics* CollectionStatistics()
        x_Akonadi__CollectionStatistics* xret = new x_Akonadi__CollectionStatistics();
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatistics() : CollectionStatistics() {}
    static void x_2(Smoke::Stack x) {
        // Akonadi::CollectionStatistics* CollectionStatistics(const Akonadi::CollectionStatistics&)
        x_Akonadi__CollectionStatistics* xret = new x_Akonadi__CollectionStatistics(*(const Akonadi::CollectionStatistics*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatistics(const Akonadi::CollectionStatistics& x1) : CollectionStatistics(x1) {}
    void x_3(Smoke::Stack x) {
        // long long count() const
        long long xret = ((const x_Akonadi__CollectionStatistics*)this)->Akonadi::CollectionStatistics::count();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_4(Smoke::Stack x) {
        // void setCount(long long)
        this->Akonadi::CollectionStatistics::setCount(*(long long*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // long long unreadCount() const
        long long xret = ((const x_Akonadi__CollectionStatistics*)this)->Akonadi::CollectionStatistics::unreadCount();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_6(Smoke::Stack x) {
        // void setUnreadCount(long long)
        this->Akonadi::CollectionStatistics::setUnreadCount(*(long long*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // long long size() const
        long long xret = ((const x_Akonadi__CollectionStatistics*)this)->Akonadi::CollectionStatistics::size();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_8(Smoke::Stack x) {
        // void setSize(long long)
        this->Akonadi::CollectionStatistics::setSize(*(long long*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // Akonadi::CollectionStatistics& operator=(const Akonadi::CollectionStatistics&)
        Akonadi::CollectionStatistics& xret = this->Akonadi::CollectionStatistics::operator=(*(const Akonadi::CollectionStatistics*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    ~x_Akonadi__CollectionStatistics() { this->_binding->deleted(42, (void*)this); }
};
void xcall_Akonadi__CollectionStatistics(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionStatistics *xself = (x_Akonadi__CollectionStatistics*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Akonadi__CollectionStatistics::x_1(args);	break;
        case 2: x_Akonadi__CollectionStatistics::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: delete (Akonadi::CollectionStatistics*)xself;	break;
    }
}
class x_Akonadi__CollectionStatisticsDelegate : public Akonadi::CollectionStatisticsDelegate, 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::CollectionStatisticsDelegate*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsDelegate*)this)->Akonadi::CollectionStatisticsDelegate::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsDelegate*)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::CollectionStatisticsDelegate*>(this))) {
            void* xret = this->Akonadi::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate*>(this))) {
            int xret = this->Akonadi::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate* CollectionStatisticsDelegate(QAbstractItemView*)
        x_Akonadi__CollectionStatisticsDelegate* xret = new x_Akonadi__CollectionStatisticsDelegate((QAbstractItemView*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatisticsDelegate(QAbstractItemView* x1) : CollectionStatisticsDelegate(x1) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::CollectionStatisticsDelegate* CollectionStatisticsDelegate(QTreeView*)
        x_Akonadi__CollectionStatisticsDelegate* xret = new x_Akonadi__CollectionStatisticsDelegate((QTreeView*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatisticsDelegate(QTreeView* x1) : CollectionStatisticsDelegate(x1) {}
    void x_10(Smoke::Stack x) {
        // void updatePalette()
        this->Akonadi::CollectionStatisticsDelegate::updatePalette();
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setUnreadCountShown(bool)
        this->Akonadi::CollectionStatisticsDelegate::setUnreadCountShown((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // bool unreadCountShown() const
        bool xret = ((const x_Akonadi__CollectionStatisticsDelegate*)this)->Akonadi::CollectionStatisticsDelegate::unreadCountShown();
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setProgressAnimationEnabled(bool)
        this->Akonadi::CollectionStatisticsDelegate::setProgressAnimationEnabled((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool progressAnimationEnabled() const
        bool xret = ((const x_Akonadi__CollectionStatisticsDelegate*)this)->Akonadi::CollectionStatisticsDelegate::progressAnimationEnabled();
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual void paint(QPainter*, const QStyleOptionViewItem&, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsDelegate*>(this))) {
            ((const x_Akonadi__CollectionStatisticsDelegate*)this)->Akonadi::CollectionStatisticsDelegate::paint((QPainter*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_Akonadi__CollectionStatisticsDelegate*)this)->paint((QPainter*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual void initStyleOption(QStyleOptionViewItem*, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsDelegate*>(this))) {
            ((const x_Akonadi__CollectionStatisticsDelegate*)this)->Akonadi::CollectionStatisticsDelegate::initStyleOption((QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_Akonadi__CollectionStatisticsDelegate*)this)->initStyleOption((QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_17(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionStatisticsDelegate::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::CollectionStatisticsDelegate::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) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::CollectionStatisticsDelegate::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(769, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsDelegate::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(770, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsDelegate::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(775, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionStatisticsDelegate::qt_metacall(x1, x2, x3);
    }
    virtual void paint(QPainter* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        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(783, (void*)this, x)) return;
        this->Akonadi::CollectionStatisticsDelegate::paint(x1, x2, x3);
    }
    virtual void initStyleOption(QStyleOptionViewItem* x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(784, (void*)this, x)) return;
        this->Akonadi::CollectionStatisticsDelegate::initStyleOption(x1, x2);
    }
    virtual QString displayText(const QVariant& x1, const QLocale& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2730, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QStyledItemDelegate::displayText(x1, x2);
    }
    virtual QSize sizeHint(const QStyleOptionViewItem& x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2725, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QStyledItemDelegate::sizeHint(x1, x2);
    }
    virtual QWidget* createEditor(QWidget* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        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(2726, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QStyledItemDelegate::createEditor(x1, x2, x3);
    }
    virtual void setEditorData(QWidget* x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2727, (void*)this, x)) return;
        this->QStyledItemDelegate::setEditorData(x1, x2);
    }
    virtual void setModelData(QWidget* x1, QAbstractItemModel* x2, const QModelIndex& x3) const {
        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(2728, (void*)this, x)) return;
        this->QStyledItemDelegate::setModelData(x1, x2, x3);
    }
    virtual void updateEditorGeometry(QWidget* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        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(2729, (void*)this, x)) return;
        this->QStyledItemDelegate::updateEditorGeometry(x1, x2, x3);
    }
    virtual bool editorEvent(QEvent* x1, QAbstractItemModel* x2, const QStyleOptionViewItem& x3, const QModelIndex& x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        if (this->_binding->callMethod(2732, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStyledItemDelegate::editorEvent(x1, x2, x3, x4);
    }
    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(2731, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStyledItemDelegate::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__CollectionStatisticsDelegate() { this->_binding->deleted(43, (void*)this); }
};
void xcall_Akonadi__CollectionStatisticsDelegate(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionStatisticsDelegate *xself = (x_Akonadi__CollectionStatisticsDelegate*)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__CollectionStatisticsDelegate::x_3(args);	break;
        case 4: x_Akonadi__CollectionStatisticsDelegate::x_4(args);	break;
        case 5: x_Akonadi__CollectionStatisticsDelegate::x_5(args);	break;
        case 6: x_Akonadi__CollectionStatisticsDelegate::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionStatisticsDelegate::x_8(args);	break;
        case 9: x_Akonadi__CollectionStatisticsDelegate::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: x_Akonadi__CollectionStatisticsDelegate::x_17(args);	break;
        case 18: x_Akonadi__CollectionStatisticsDelegate::x_18(args);	break;
        case 19: x_Akonadi__CollectionStatisticsDelegate::x_19(args);	break;
        case 20: delete (Akonadi::CollectionStatisticsDelegate*)xself;	break;
    }
}
class x_Akonadi__CollectionStatisticsJob : public Akonadi::CollectionStatisticsJob, 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::CollectionStatisticsJob*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsJob*)this)->Akonadi::CollectionStatisticsJob::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsJob*)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::CollectionStatisticsJob*>(this))) {
            void* xret = this->Akonadi::CollectionStatisticsJob::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::CollectionStatisticsJob::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::CollectionStatisticsJob::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::CollectionStatisticsJob::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::CollectionStatisticsJob::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::CollectionStatisticsJob*>(this))) {
            int xret = this->Akonadi::CollectionStatisticsJob::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::CollectionStatisticsJob* CollectionStatisticsJob(const Akonadi::Collection&, QObject*)
        x_Akonadi__CollectionStatisticsJob* xret = new x_Akonadi__CollectionStatisticsJob(*(const Akonadi::Collection*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatisticsJob(const Akonadi::Collection& x1, QObject* x2) : CollectionStatisticsJob(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // Akonadi::CollectionStatistics statistics() const
        Akonadi::CollectionStatistics xret = ((const x_Akonadi__CollectionStatisticsJob*)this)->Akonadi::CollectionStatisticsJob::statistics();
        x[0].s_class = (void*)new Akonadi::CollectionStatistics(xret);
    }
    void x_10(Smoke::Stack x) {
        // Akonadi::Collection collection() const
        Akonadi::Collection xret = ((const x_Akonadi__CollectionStatisticsJob*)this)->Akonadi::CollectionStatisticsJob::collection();
        x[0].s_class = (void*)new Akonadi::Collection(xret);
    }
    void x_11(Smoke::Stack x) {
        // virtual void doStart()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsJob*>(this))) {
            this->Akonadi::CollectionStatisticsJob::doStart();
            (void)x; // noop (for compiler warning)
        } else {
            this->doStart();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // virtual void doHandleResponse(const QByteArray&, const QByteArray&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsJob*>(this))) {
            this->Akonadi::CollectionStatisticsJob::doHandleResponse(*(const QByteArray*)x[1].s_class,*(const QByteArray*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->doHandleResponse(*(const QByteArray*)x[1].s_class,*(const QByteArray*)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::CollectionStatisticsJob::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::CollectionStatisticsJob::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::CollectionStatisticsJob* CollectionStatisticsJob(const Akonadi::Collection&)
        x_Akonadi__CollectionStatisticsJob* xret = new x_Akonadi__CollectionStatisticsJob(*(const Akonadi::Collection*)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::CollectionStatisticsJob::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(789, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsJob::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(790, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsJob::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(795, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionStatisticsJob::qt_metacall(x1, x2, x3);
    }
    virtual void doStart() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(799, (void*)this, x)) return;
        this->Akonadi::CollectionStatisticsJob::doStart();
    }
    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(800, (void*)this, x)) return;
        this->Akonadi::CollectionStatisticsJob::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 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);
    }
    ~x_Akonadi__CollectionStatisticsJob() { this->_binding->deleted(44, (void*)this); }
};
void xcall_Akonadi__CollectionStatisticsJob(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionStatisticsJob *xself = (x_Akonadi__CollectionStatisticsJob*)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__CollectionStatisticsJob::x_3(args);	break;
        case 4: x_Akonadi__CollectionStatisticsJob::x_4(args);	break;
        case 5: x_Akonadi__CollectionStatisticsJob::x_5(args);	break;
        case 6: x_Akonadi__CollectionStatisticsJob::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionStatisticsJob::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__CollectionStatisticsJob::x_13(args);	break;
        case 14: x_Akonadi__CollectionStatisticsJob::x_14(args);	break;
        case 15: x_Akonadi__CollectionStatisticsJob::x_15(args);	break;
        case 16: x_Akonadi__CollectionStatisticsJob::x_16(args);	break;
        case 17: delete (Akonadi::CollectionStatisticsJob*)xself;	break;
    }
}
class x_Akonadi__CollectionStatisticsModel : public Akonadi::CollectionStatisticsModel, 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::CollectionStatisticsModel*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionStatisticsModel*)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::CollectionStatisticsModel*>(this))) {
            void* xret = this->Akonadi::CollectionStatisticsModel::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::CollectionStatisticsModel::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::CollectionStatisticsModel::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::CollectionStatisticsModel::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::CollectionStatisticsModel::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::CollectionStatisticsModel*>(this))) {
            int xret = this->Akonadi::CollectionStatisticsModel::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::CollectionStatisticsModel* CollectionStatisticsModel(QObject*)
        x_Akonadi__CollectionStatisticsModel* xret = new x_Akonadi__CollectionStatisticsModel((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionStatisticsModel(QObject* x1) : CollectionStatisticsModel(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual int columnCount(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsModel*>(this))) {
            int xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::columnCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->columnCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        }
    }
    void x_10(Smoke::Stack x) {
        // virtual QVariant data(const QModelIndex&, int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsModel*>(this))) {
            QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::data(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->data(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_11(Smoke::Stack x) {
        // virtual QVariant headerData(int, Qt::Orientation, int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionStatisticsModel*>(this))) {
            QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::headerData((int)x[1].s_int,(Qt::Orientation)x[2].s_enum,(int)x[3].s_int);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->headerData((int)x[1].s_int,(Qt::Orientation)x[2].s_enum,(int)x[3].s_int);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    static void x_12(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionStatisticsModel::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::CollectionStatisticsModel::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::CollectionStatisticsModel* CollectionStatisticsModel()
        x_Akonadi__CollectionStatisticsModel* xret = new x_Akonadi__CollectionStatisticsModel((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_15(Smoke::Stack x) {
        // int columnCount() const
        int xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::columnCount((const QModelIndex&)QModelIndex());
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // QVariant data(const QModelIndex&) const
        QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::data(*(const QModelIndex*)x[1].s_class,(int)Qt::DisplayRole);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_17(Smoke::Stack x) {
        // QVariant headerData(int, Qt::Orientation) const
        QVariant xret = ((const x_Akonadi__CollectionStatisticsModel*)this)->Akonadi::CollectionStatisticsModel::headerData((int)x[1].s_int,(Qt::Orientation)x[2].s_enum,(int)Qt::DisplayRole);
        x[0].s_class = (void*)new QVariant(xret);
    }
    static void x_18(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::CollectionStatisticsModel::staticMetaObject;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::UnreadRole;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::TotalRole;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::StatisticsRole;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::RecursiveUnreadRole;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::RecursiveTotalRole;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::RecursiveStatisticsRole;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::SizeRole;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::RecursiveSizeRole;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)Akonadi::CollectionStatisticsModel::UserRole;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(806, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsModel::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(807, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionStatisticsModel::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(812, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionStatisticsModel::qt_metacall(x1, x2, x3);
    }
    virtual int columnCount(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(814, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionStatisticsModel::columnCount(x1);
    }
    virtual QVariant data(const QModelIndex& x1, int x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        if (this->_binding->callMethod(815, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionStatisticsModel::data(x1, x2);
    }
    virtual QVariant headerData(int x1, Qt::Orientation x2, int x3) const {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_enum = x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(816, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionStatisticsModel::headerData(x1, x2, x3);
    }
    virtual QModelIndex index(int x1, int x2, const QModelIndex& x3) const {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(618, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionModel::index(x1, x2, x3);
    }
    virtual QModelIndex parent(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(619, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionModel::parent(x1);
    }
    virtual int rowCount(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(620, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionModel::rowCount(x1);
    }
    virtual bool setHeaderData(int x1, Qt::Orientation x2, const QVariant& x3, int x4) {
        Smoke::StackItem x[5];
        x[1].s_int = x1;
        x[2].s_enum = x2;
        x[3].s_class = (void*)&x3;
        x[4].s_int = x4;
        if (this->_binding->callMethod(622, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::CollectionModel::setHeaderData(x1, x2, x3, x4);
    }
    virtual bool setData(const QModelIndex& x1, const QVariant& x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(623, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::CollectionModel::setData(x1, x2, x3);
    }
    virtual QFlags<Qt::ItemFlag> flags(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(624, (void*)this, x)) return (QFlags<Qt::ItemFlag>)x[0].s_uint;
        return this->Akonadi::CollectionModel::flags(x1);
    }
    virtual QFlags<Qt::DropAction> supportedDropActions() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(625, (void*)this, x)) return (QFlags<Qt::DropAction>)x[0].s_uint;
        return this->Akonadi::CollectionModel::supportedDropActions();
    }
    virtual QMimeData* mimeData(const QList<QModelIndex>& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(626, (void*)this, x)) return (QMimeData*)x[0].s_class;
        return this->Akonadi::CollectionModel::mimeData(x1);
    }
    virtual bool dropMimeData(const QMimeData* x1, Qt::DropAction x2, int x3, int x4, const QModelIndex& x5) {
        Smoke::StackItem x[6];
        x[1].s_class = (void*)x1;
        x[2].s_enum = x2;
        x[3].s_int = x3;
        x[4].s_int = x4;
        x[5].s_class = (void*)&x5;
        if (this->_binding->callMethod(627, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Akonadi::CollectionModel::dropMimeData(x1, x2, x3, x4, x5);
    }
    virtual QStringList mimeTypes() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(628, (void*)this, x)) {
            QStringList* xptr = (QStringList*)x[0].s_class;
            QStringList xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Akonadi::CollectionModel::mimeTypes();
    }
    virtual bool hasChildren(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2529, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::hasChildren(x1);
    }
    virtual QMap<int,QVariant> itemData(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2533, (void*)this, x)) {
            QMap<int,QVariant>* xptr = (QMap<int,QVariant>*)x[0].s_class;
            QMap<int,QVariant> xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemModel::itemData(x1);
    }
    virtual bool setItemData(const QModelIndex& x1, const QMap<int,QVariant>& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2534, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::setItemData(x1, x2);
    }
    virtual bool insertRows(int x1, int x2, const QModelIndex& x3) {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(2539, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::insertRows(x1, x2, x3);
    }
    virtual bool insertColumns(int x1, int x2, const QModelIndex& x3) {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(2540, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::insertColumns(x1, x2, x3);
    }
    virtual bool removeRows(int x1, int x2, const QModelIndex& x3) {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(2541, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::removeRows(x1, x2, x3);
    }
    virtual bool removeColumns(int x1, int x2, const QModelIndex& x3) {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(2542, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::removeColumns(x1, x2, x3);
    }
    virtual void fetchMore(const QModelIndex& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2543, (void*)this, x)) return;
        this->QAbstractItemModel::fetchMore(x1);
    }
    virtual bool canFetchMore(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2544, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::canFetchMore(x1);
    }
    virtual void sort(int x1, Qt::SortOrder x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(2545, (void*)this, x)) return;
        this->QAbstractItemModel::sort(x1, x2);
    }
    virtual QModelIndex buddy(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2546, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemModel::buddy(x1);
    }
    virtual QList<QModelIndex> match(const QModelIndex& x1, int x2, const QVariant& x3, int x4, QFlags<Qt::MatchFlag> x5) const {
        Smoke::StackItem x[6];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)&x3;
        x[4].s_int = x4;
        x[5].s_uint = (uint)x5;
        if (this->_binding->callMethod(2547, (void*)this, x)) {
            QList<QModelIndex>* xptr = (QList<QModelIndex>*)x[0].s_class;
            QList<QModelIndex> xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemModel::match(x1, x2, x3, x4, x5);
    }
    virtual QSize span(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2548, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemModel::span(x1);
    }
    virtual bool submit() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2549, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::submit();
    }
    virtual void revert() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2550, (void*)this, x)) return;
        this->QAbstractItemModel::revert();
    }
    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 73: //Akonadi::CollectionStatisticsModel::Roles
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Akonadi::CollectionStatisticsModel::Roles;
                    break;
                case Smoke::EnumDelete:
                    delete (Akonadi::CollectionStatisticsModel::Roles*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Akonadi::CollectionStatisticsModel::Roles*)xdata = (Akonadi::CollectionStatisticsModel::Roles)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Akonadi::CollectionStatisticsModel::Roles*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Akonadi__CollectionStatisticsModel() { this->_binding->deleted(45, (void*)this); }
};
void xenum_Akonadi__CollectionStatisticsModel(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Akonadi__CollectionStatisticsModel::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Akonadi__CollectionStatisticsModel(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionStatisticsModel *xself = (x_Akonadi__CollectionStatisticsModel*)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__CollectionStatisticsModel::x_3(args);	break;
        case 4: x_Akonadi__CollectionStatisticsModel::x_4(args);	break;
        case 5: x_Akonadi__CollectionStatisticsModel::x_5(args);	break;
        case 6: x_Akonadi__CollectionStatisticsModel::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionStatisticsModel::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__CollectionStatisticsModel::x_12(args);	break;
        case 13: x_Akonadi__CollectionStatisticsModel::x_13(args);	break;
        case 14: x_Akonadi__CollectionStatisticsModel::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: x_Akonadi__CollectionStatisticsModel::x_18(args);	break;
        case 19: x_Akonadi__CollectionStatisticsModel::x_19(args);	break;
        case 20: x_Akonadi__CollectionStatisticsModel::x_20(args);	break;
        case 21: x_Akonadi__CollectionStatisticsModel::x_21(args);	break;
        case 22: x_Akonadi__CollectionStatisticsModel::x_22(args);	break;
        case 23: x_Akonadi__CollectionStatisticsModel::x_23(args);	break;
        case 24: x_Akonadi__CollectionStatisticsModel::x_24(args);	break;
        case 25: x_Akonadi__CollectionStatisticsModel::x_25(args);	break;
        case 26: x_Akonadi__CollectionStatisticsModel::x_26(args);	break;
        case 27: x_Akonadi__CollectionStatisticsModel::x_27(args);	break;
        case 28: delete (Akonadi::CollectionStatisticsModel*)xself;	break;
    }
}
class x_Akonadi__CollectionView : public Akonadi::CollectionView, 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::CollectionView*>(this))) {
            const QMetaObject* xret = ((const x_Akonadi__CollectionView*)this)->Akonadi::CollectionView::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Akonadi__CollectionView*)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::CollectionView*>(this))) {
            void* xret = this->Akonadi::CollectionView::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::CollectionView::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::CollectionView::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::CollectionView::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::CollectionView::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::CollectionView*>(this))) {
            int xret = this->Akonadi::CollectionView::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::CollectionView* CollectionView(QWidget*)
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionView(QWidget* x1) : CollectionView(x1) {}
    static void x_9(Smoke::Stack x) {
        // Akonadi::CollectionView* CollectionView(KXmlGuiWindow*, QWidget*)
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((KXmlGuiWindow*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionView(KXmlGuiWindow* x1, QWidget* x2) : CollectionView(x1, x2) {}
    static void x_10(Smoke::Stack x) {
        // Akonadi::CollectionView* CollectionView(KXMLGUIClient*, QWidget*)
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((KXMLGUIClient*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Akonadi__CollectionView(KXMLGUIClient* x1, QWidget* x2) : CollectionView(x1, x2) {}
    void x_11(Smoke::Stack x) {
        // void setXmlGuiWindow(KXmlGuiWindow*)
        this->Akonadi::CollectionView::setXmlGuiWindow((KXmlGuiWindow*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void setXmlGuiClient(KXMLGUIClient*)
        this->Akonadi::CollectionView::setXmlGuiClient((KXMLGUIClient*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // virtual void setModel(QAbstractItemModel*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::setModel((QAbstractItemModel*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setModel((QAbstractItemModel*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_14(Smoke::Stack x) {
        // void clicked(const Akonadi::Collection&)
        this->Akonadi::CollectionView::clicked(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void currentChanged(const Akonadi::Collection&)
        this->Akonadi::CollectionView::currentChanged(*(const Akonadi::Collection*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void currentChanged(const QModelIndex&, const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::currentChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->currentChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // virtual void dragMoveEvent(QDragMoveEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::dragMoveEvent((QDragMoveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->dragMoveEvent((QDragMoveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_18(Smoke::Stack x) {
        // virtual void dragLeaveEvent(QDragLeaveEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::dragLeaveEvent((QDragLeaveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->dragLeaveEvent((QDragLeaveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // virtual void dropEvent(QDropEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::dropEvent((QDropEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->dropEvent((QDropEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_20(Smoke::Stack x) {
        // virtual void contextMenuEvent(QContextMenuEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Akonadi::CollectionView*>(this))) {
            this->Akonadi::CollectionView::contextMenuEvent((QContextMenuEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->contextMenuEvent((QContextMenuEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_21(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Akonadi::CollectionView::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Akonadi::CollectionView::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_23(Smoke::Stack x) {
        // Akonadi::CollectionView* CollectionView()
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_24(Smoke::Stack x) {
        // Akonadi::CollectionView* CollectionView(KXmlGuiWindow*)
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((KXmlGuiWindow*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_25(Smoke::Stack x) {
        // Akonadi::CollectionView* CollectionView(KXMLGUIClient*)
        x_Akonadi__CollectionView* xret = new x_Akonadi__CollectionView((KXMLGUIClient*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_26(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Akonadi::CollectionView::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(834, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Akonadi::CollectionView::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(835, (void*)this, x)) return (void*)x[0].s_class;
        return this->Akonadi::CollectionView::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(840, (void*)this, x)) return (int)x[0].s_int;
        return this->Akonadi::CollectionView::qt_metacall(x1, x2, x3);
    }
    virtual void setModel(QAbstractItemModel* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(846, (void*)this, x)) return;
        this->Akonadi::CollectionView::setModel(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(850, (void*)this, x)) return;
        this->Akonadi::CollectionView::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(851, (void*)this, x)) return;
        this->Akonadi::CollectionView::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(852, (void*)this, x)) return;
        this->Akonadi::CollectionView::dropEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(853, (void*)this, x)) return;
        this->Akonadi::CollectionView::contextMenuEvent(x1);
    }
    virtual void drawRow(QPainter* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        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(2754, (void*)this, x)) return;
        this->QTreeView::drawRow(x1, x2, x3);
    }
    virtual void drawBranches(QPainter* x1, const QRect& x2, const QModelIndex& x3) const {
        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(2755, (void*)this, x)) return;
        this->QTreeView::drawBranches(x1, x2, x3);
    }
    virtual void setSelectionModel(QItemSelectionModel* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2734, (void*)this, x)) return;
        this->QTreeView::setSelectionModel(x1);
    }
    virtual void keyboardSearch(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2735, (void*)this, x)) return;
        this->QTreeView::keyboardSearch(x1);
    }
    virtual QRect visualRect(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2736, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QTreeView::visualRect(x1);
    }
    virtual void scrollTo(const QModelIndex& x1, QAbstractItemView::ScrollHint x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(2737, (void*)this, x)) return;
        this->QTreeView::scrollTo(x1, x2);
    }
    virtual QModelIndex indexAt(const QPoint& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2738, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QTreeView::indexAt(x1);
    }
    virtual int sizeHintForRow(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2553, (void*)this, x)) return (int)x[0].s_int;
        return this->QAbstractItemView::sizeHintForRow(x1);
    }
    virtual int sizeHintForColumn(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2764, (void*)this, x)) return (int)x[0].s_int;
        return this->QTreeView::sizeHintForColumn(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2555, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemView::inputMethodQuery(x1);
    }
    virtual void reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2740, (void*)this, x)) return;
        this->QTreeView::reset();
    }
    virtual void setRootIndex(const QModelIndex& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2733, (void*)this, x)) return;
        this->QTreeView::setRootIndex(x1);
    }
    virtual void doItemsLayout() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2739, (void*)this, x)) return;
        this->QTreeView::doItemsLayout();
    }
    virtual void selectAll() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2742, (void*)this, x)) return;
        this->QTreeView::selectAll();
    }
    virtual void dataChanged(const QModelIndex& x1, const QModelIndex& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2741, (void*)this, x)) return;
        this->QTreeView::dataChanged(x1, x2);
    }
    virtual void rowsInserted(const QModelIndex& x1, int x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(2744, (void*)this, x)) return;
        this->QTreeView::rowsInserted(x1, x2, x3);
    }
    virtual void rowsAboutToBeRemoved(const QModelIndex& x1, int x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(2745, (void*)this, x)) return;
        this->QTreeView::rowsAboutToBeRemoved(x1, x2, x3);
    }
    virtual void selectionChanged(const QItemSelection& x1, const QItemSelection& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(2767, (void*)this, x)) return;
        this->QTreeView::selectionChanged(x1, x2);
    }
    virtual void currentChanged(const QModelIndex& x1, const QModelIndex& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(849, (void*)this, x)) return;
        this->Akonadi::CollectionView::currentChanged(x1, x2);
    }
    virtual void updateEditorData() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2557, (void*)this, x)) return;
        this->QAbstractItemView::updateEditorData();
    }
    virtual void updateEditorGeometries() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2558, (void*)this, x)) return;
        this->QAbstractItemView::updateEditorGeometries();
    }
    virtual void updateGeometries() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2763, (void*)this, x)) return;
        this->QTreeView::updateGeometries();
    }
    virtual void verticalScrollbarAction(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2559, (void*)this, x)) return;
        this->QAbstractItemView::verticalScrollbarAction(x1);
    }
    virtual void horizontalScrollbarAction(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2765, (void*)this, x)) return;
        this->QTreeView::horizontalScrollbarAction(x1);
    }
    virtual void verticalScrollbarValueChanged(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2561, (void*)this, x)) return;
        this->QAbstractItemView::verticalScrollbarValueChanged(x1);
    }
    virtual void horizontalScrollbarValueChanged(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2562, (void*)this, x)) return;
        this->QAbstractItemView::horizontalScrollbarValueChanged(x1);
    }
    virtual void closeEditor(QWidget* x1, QAbstractItemDelegate::EndEditHint x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(2563, (void*)this, x)) return;
        this->QAbstractItemView::closeEditor(x1, x2);
    }
    virtual void commitData(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2564, (void*)this, x)) return;
        this->QAbstractItemView::commitData(x1);
    }
    virtual void editorDestroyed(QObject* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2565, (void*)this, x)) return;
        this->QAbstractItemView::editorDestroyed(x1);
    }
    virtual QModelIndex moveCursor(QAbstractItemView::CursorAction x1, QFlags<Qt::KeyboardModifier> x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_uint = (uint)x2;
        if (this->_binding->callMethod(2746, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QTreeView::moveCursor(x1, x2);
    }
    virtual int horizontalOffset() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2747, (void*)this, x)) return (int)x[0].s_int;
        return this->QTreeView::horizontalOffset();
    }
    virtual int verticalOffset() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2748, (void*)this, x)) return (int)x[0].s_int;
        return this->QTreeView::verticalOffset();
    }
    virtual bool isIndexHidden(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2766, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QTreeView::isIndexHidden(x1);
    }
    virtual void setSelection(const QRect& x1, QFlags<QItemSelectionModel::SelectionFlag> x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_uint = (uint)x2;
        if (this->_binding->callMethod(2749, (void*)this, x)) return;
        this->QTreeView::setSelection(x1, x2);
    }
    virtual QRegion visualRegionForSelection(const QItemSelection& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(2750, (void*)this, x)) {
            QRegion* xptr = (QRegion*)x[0].s_class;
            QRegion xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QTreeView::visualRegionForSelection(x1);
    }
    virtual QList<QModelIndex> selectedIndexes() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2751, (void*)this, x)) {
            QList<QModelIndex>* xptr = (QList<QModelIndex>*)x[0].s_class;
            QList<QModelIndex> xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QTreeView::selectedIndexes();
    }
    virtual bool edit(const QModelIndex& x1, QAbstractItemView::EditTrigger x2, QEvent* x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(2566, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemView::edit(x1, x2, x3);
    }
    virtual QFlags<QItemSelectionModel::SelectionFlag> selectionCommand(const QModelIndex& x1, const QEvent* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(2567, (void*)this, x)) return (QFlags<QItemSelectionModel::SelectionFlag>)x[0].s_uint;
        return this->QAbstractItemView::selectionCommand(x1, x2);
    }
    virtual void startDrag(QFlags<Qt::DropAction> x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = (uint)x1;
        if (this->_binding->callMethod(2568, (void*)this, x)) return;
        this->QAbstractItemView::startDrag(x1);
    }
    virtual QStyleOptionViewItem viewOptions() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2569, (void*)this, x)) {
            QStyleOptionViewItem* xptr = (QStyleOptionViewItem*)x[0].s_class;
            QStyleOptionViewItem xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemView::viewOptions();
    }
    virtual bool viewportEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2762, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QTreeView::viewportEvent(x1);
    }
    virtual void scrollContentsBy(int x1, int x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_int = x2;
        if (this->_binding->callMethod(2743, (void*)this, x)) return;
        this->QTreeView::scrollContentsBy(x1, x2);
    }
    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(2627, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractScrollArea::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2626, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractScrollArea::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(2756, (void*)this, x)) return;
        this->QTreeView::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2757, (void*)this, x)) return;
        this->QTreeView::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2758, (void*)this, x)) return;
        this->QTreeView::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2759, (void*)this, x)) return;
        this->QTreeView::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2628, (void*)this, x)) return;
        this->QAbstractScrollArea::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2760, (void*)this, x)) return;
        this->QTreeView::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(2578, (void*)this, x)) return;
        this->QAbstractItemView::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2579, (void*)this, x)) return;
        this->QAbstractItemView::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(2753, (void*)this, x)) return;
        this->QTreeView::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(2581, (void*)this, x)) return;
        this->QAbstractItemView::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 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(2575, (void*)this, x)) return;
        this->QAbstractItemView::dragEnterEvent(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(2658, (void*)this, x)) return;
        this->QFrame::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2582, (void*)this, x)) return;
        this->QAbstractItemView::inputMethodEvent(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(2570, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemView::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(2571, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemView::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(2752, (void*)this, x)) return;
        this->QTreeView::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__CollectionView() { this->_binding->deleted(46, (void*)this); }
};
void xcall_Akonadi__CollectionView(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Akonadi__CollectionView *xself = (x_Akonadi__CollectionView*)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__CollectionView::x_3(args);	break;
        case 4: x_Akonadi__CollectionView::x_4(args);	break;
        case 5: x_Akonadi__CollectionView::x_5(args);	break;
        case 6: x_Akonadi__CollectionView::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Akonadi__CollectionView::x_8(args);	break;
        case 9: x_Akonadi__CollectionView::x_9(args);	break;
        case 10: x_Akonadi__CollectionView::x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: x_Akonadi__CollectionView::x_21(args);	break;
        case 22: x_Akonadi__CollectionView::x_22(args);	break;
        case 23: x_Akonadi__CollectionView::x_23(args);	break;
        case 24: x_Akonadi__CollectionView::x_24(args);	break;
        case 25: x_Akonadi__CollectionView::x_25(args);	break;
        case 26: x_Akonadi__CollectionView::x_26(args);	break;
        case 27: delete (Akonadi::CollectionView*)xself;	break;
    }
}

}
