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

#include <smoke.h>
#include <qtgui_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqtgui {

class x_QDropEvent : public QDropEvent, 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) {
        // QDropEvent* QDropEvent(const QPoint&, QFlags<Qt::DropAction>, const QMimeData*, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>, QEvent::Type)
        x_QDropEvent* xret = new x_QDropEvent(*(const QPoint*)x[1].s_class,(QFlags<Qt::DropAction>)x[2].s_uint,(const QMimeData*)x[3].s_class,(QFlags<Qt::MouseButton>)x[4].s_uint,(QFlags<Qt::KeyboardModifier>)x[5].s_uint,(QEvent::Type)x[6].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDropEvent(const QPoint& x1, QFlags<Qt::DropAction> x2, const QMimeData* x3, QFlags<Qt::MouseButton> x4, QFlags<Qt::KeyboardModifier> x5, QEvent::Type x6) : QDropEvent(x1, x2, x3, x4, x5, x6) {}
    void x_2(Smoke::Stack x) {
        // const QPoint& pos() const
        const QPoint& xret = ((const x_QDropEvent*)this)->QDropEvent::pos();
        x[0].s_class = (void*)&xret;
    }
    void x_3(Smoke::Stack x) {
        // QFlags<Qt::MouseButton> mouseButtons() const
        QFlags<Qt::MouseButton> xret = ((const x_QDropEvent*)this)->QDropEvent::mouseButtons();
        x[0].s_uint = (uint)xret;
    }
    void x_4(Smoke::Stack x) {
        // QFlags<Qt::KeyboardModifier> keyboardModifiers() const
        QFlags<Qt::KeyboardModifier> xret = ((const x_QDropEvent*)this)->QDropEvent::keyboardModifiers();
        x[0].s_uint = (uint)xret;
    }
    void x_5(Smoke::Stack x) {
        // QFlags<Qt::DropAction> possibleActions() const
        QFlags<Qt::DropAction> xret = ((const x_QDropEvent*)this)->QDropEvent::possibleActions();
        x[0].s_uint = (uint)xret;
    }
    void x_6(Smoke::Stack x) {
        // Qt::DropAction proposedAction() const
        Qt::DropAction xret = ((const x_QDropEvent*)this)->QDropEvent::proposedAction();
        x[0].s_enum = xret;
    }
    void x_7(Smoke::Stack x) {
        // void acceptProposedAction()
        this->QDropEvent::acceptProposedAction();
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // Qt::DropAction dropAction() const
        Qt::DropAction xret = ((const x_QDropEvent*)this)->QDropEvent::dropAction();
        x[0].s_enum = xret;
    }
    void x_9(Smoke::Stack x) {
        // void setDropAction(Qt::DropAction)
        this->QDropEvent::setDropAction((Qt::DropAction)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // QWidget* source() const
        QWidget* xret = ((const x_QDropEvent*)this)->QDropEvent::source();
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // const QMimeData* mimeData() const
        const QMimeData* xret = ((const x_QDropEvent*)this)->QDropEvent::mimeData();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // const char* format(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QDropEvent*>(this))) {
            const char* xret = ((const x_QDropEvent*)this)->QDropEvent::format((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        } else {
            const char* xret = ((const x_QDropEvent*)this)->format((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        }
    }
    void x_13(Smoke::Stack x) {
        // QByteArray encodedData(const char*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QDropEvent*>(this))) {
            QByteArray xret = ((const x_QDropEvent*)this)->QDropEvent::encodedData((const char*)x[1].s_class);
            x[0].s_class = (void*)new QByteArray(xret);
        } else {
            QByteArray xret = ((const x_QDropEvent*)this)->encodedData((const char*)x[1].s_class);
            x[0].s_class = (void*)new QByteArray(xret);
        }
    }
    void x_14(Smoke::Stack x) {
        // bool provides(const char*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QDropEvent*>(this))) {
            bool xret = ((const x_QDropEvent*)this)->QDropEvent::provides((const char*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QDropEvent*)this)->provides((const char*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_15(Smoke::Stack x) {
        // QDropEvent* QDropEvent(const QDropEvent&)
        x_QDropEvent* xret = new x_QDropEvent(*(const QDropEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDropEvent(const QDropEvent& x1) : QDropEvent(x1) {}
    static void x_16(Smoke::Stack x) {
        // QDropEvent* QDropEvent(const QPoint&, QFlags<Qt::DropAction>, const QMimeData*, QFlags<Qt::MouseButton>, QFlags<Qt::KeyboardModifier>)
        x_QDropEvent* xret = new x_QDropEvent(*(const QPoint*)x[1].s_class,(QFlags<Qt::DropAction>)x[2].s_uint,(const QMimeData*)x[3].s_class,(QFlags<Qt::MouseButton>)x[4].s_uint,(QFlags<Qt::KeyboardModifier>)x[5].s_uint,(QEvent::Type)Drop);
        x[0].s_class = (void*)xret;
    }
    void x_17(Smoke::Stack x) {
        // const char* format() const
        const char* xret = ((const x_QDropEvent*)this)->QDropEvent::format((int)0);
        x[0].s_class = (void*)xret;
    }
    void x_18(Smoke::Stack x) {
        // QPoint p
        x[0].s_class = (void*)&this->QDropEvent::p;
    }
    void x_19(Smoke::Stack x) {
        // QPoint p=
        this->QDropEvent::p = *(const QPoint*)x[1].s_class;
    }
    void x_20(Smoke::Stack x) {
        // QFlags<Qt::MouseButton> mouseState
        x[0].s_uint = (uint)this->QDropEvent::mouseState;
    }
    void x_21(Smoke::Stack x) {
        // QFlags<Qt::MouseButton> mouseState=
        this->QDropEvent::mouseState = (QFlags<Qt::MouseButton>)x[1].s_uint;
    }
    void x_22(Smoke::Stack x) {
        // QFlags<Qt::KeyboardModifier> modState
        x[0].s_uint = (uint)this->QDropEvent::modState;
    }
    void x_23(Smoke::Stack x) {
        // QFlags<Qt::KeyboardModifier> modState=
        this->QDropEvent::modState = (QFlags<Qt::KeyboardModifier>)x[1].s_uint;
    }
    void x_24(Smoke::Stack x) {
        // QFlags<Qt::DropAction> act
        x[0].s_uint = (uint)this->QDropEvent::act;
    }
    void x_25(Smoke::Stack x) {
        // QFlags<Qt::DropAction> act=
        this->QDropEvent::act = (QFlags<Qt::DropAction>)x[1].s_uint;
    }
    void x_26(Smoke::Stack x) {
        // Qt::DropAction drop_action
        x[0].s_enum = this->QDropEvent::drop_action;
    }
    void x_27(Smoke::Stack x) {
        // Qt::DropAction drop_action=
        this->QDropEvent::drop_action = (Qt::DropAction)x[1].s_enum;
    }
    void x_28(Smoke::Stack x) {
        // Qt::DropAction default_action
        x[0].s_enum = this->QDropEvent::default_action;
    }
    void x_29(Smoke::Stack x) {
        // Qt::DropAction default_action=
        this->QDropEvent::default_action = (Qt::DropAction)x[1].s_enum;
    }
    void x_30(Smoke::Stack x) {
        // const QMimeData* mdata
        x[0].s_class = (void*)this->QDropEvent::mdata;
    }
    void x_31(Smoke::Stack x) {
        // const QMimeData* mdata=
        this->QDropEvent::mdata = (const QMimeData*)x[1].s_class;
    }
    void x_32(Smoke::Stack x) {
        // QList<QByteArray> fmts
        x[0].s_class = (void*)&this->QDropEvent::fmts;
    }
    void x_33(Smoke::Stack x) {
        // QList<QByteArray> fmts=
        this->QDropEvent::fmts = *(const QList<QByteArray>*)x[1].s_class;
    }
    virtual const char* format(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2912, (void*)this, x)) return (const char*)x[0].s_class;
        return this->QDropEvent::format(x1);
    }
    virtual bool provides(const char* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2914, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QDropEvent::provides(x1);
    }
    virtual QByteArray encodedData(const char* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2913, (void*)this, x)) {
            QByteArray* xptr = (QByteArray*)x[0].s_class;
            QByteArray xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDropEvent::encodedData(x1);
    }
    ~x_QDropEvent() { this->_binding->deleted(96, (void*)this); }
};
void xcall_QDropEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDropEvent *xself = (x_QDropEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDropEvent::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: 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: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: x_QDropEvent::x_15(args);	break;
        case 16: x_QDropEvent::x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: delete (QDropEvent*)xself;	break;
    }
}
class x_QErrorMessage : public QErrorMessage, 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<QErrorMessage*>(this))) {
            const QMetaObject* xret = ((const x_QErrorMessage*)this)->QErrorMessage::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QErrorMessage*)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<QErrorMessage*>(this))) {
            void* xret = this->QErrorMessage::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 = QErrorMessage::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 = QErrorMessage::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 = QErrorMessage::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 = QErrorMessage::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<QErrorMessage*>(this))) {
            int xret = this->QErrorMessage::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) {
        // QErrorMessage* QErrorMessage(QWidget*)
        x_QErrorMessage* xret = new x_QErrorMessage((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QErrorMessage(QWidget* x1) : QErrorMessage(x1) {}
    static void x_9(Smoke::Stack x) {
        // static QErrorMessage* qtHandler()
        QErrorMessage* xret = QErrorMessage::qtHandler();
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // void showMessage(const QString&)
        this->QErrorMessage::showMessage(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void showMessage(const QString&, const QString&)
        this->QErrorMessage::showMessage(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void done(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QErrorMessage*>(this))) {
            this->QErrorMessage::done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QErrorMessage*>(this))) {
            this->QErrorMessage::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)
        }
    }
    static void x_14(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QErrorMessage::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 = QErrorMessage::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) {
        // QErrorMessage* QErrorMessage()
        x_QErrorMessage* xret = new x_QErrorMessage((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_17(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QErrorMessage::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2935, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QErrorMessage::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2936, (void*)this, x)) return (void*)x[0].s_class;
        return this->QErrorMessage::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(2941, (void*)this, x)) return (int)x[0].s_int;
        return this->QErrorMessage::qt_metacall(x1, x2, x3);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2946, (void*)this, x)) return;
        this->QErrorMessage::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2580, (void*)this, x)) return;
        this->QDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2581, (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(2563, (void*)this, x)) return;
        this->QDialog::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2568, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2569, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(15568, (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(15617, (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(15618, (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(15619, (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(15620, (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(15621, (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(2583, (void*)this, x)) return;
        this->QDialog::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15623, (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(15624, (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(15625, (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(15626, (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(15627, (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(15628, (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(15629, (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(2586, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2584, (void*)this, x)) return;
        this->QDialog::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2587, (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(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(2585, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15640, (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(15641, (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(2947, (void*)this, x)) return;
        this->QErrorMessage::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15644, (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(15645, (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(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(15616, (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(2588, (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(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_QErrorMessage() { this->_binding->deleted(97, (void*)this); }
};
void xcall_QErrorMessage(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QErrorMessage *xself = (x_QErrorMessage*)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_QErrorMessage::x_3(args);	break;
        case 4: x_QErrorMessage::x_4(args);	break;
        case 5: x_QErrorMessage::x_5(args);	break;
        case 6: x_QErrorMessage::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QErrorMessage::x_8(args);	break;
        case 9: x_QErrorMessage::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_QErrorMessage::x_14(args);	break;
        case 15: x_QErrorMessage::x_15(args);	break;
        case 16: x_QErrorMessage::x_16(args);	break;
        case 17: x_QErrorMessage::x_17(args);	break;
        case 18: delete (QErrorMessage*)xself;	break;
    }
}
class x_QFileDialog : public QFileDialog, 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<QFileDialog*>(this))) {
            const QMetaObject* xret = ((const x_QFileDialog*)this)->QFileDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFileDialog*)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<QFileDialog*>(this))) {
            void* xret = this->QFileDialog::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 = QFileDialog::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 = QFileDialog::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 = QFileDialog::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 = QFileDialog::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<QFileDialog*>(this))) {
            int xret = this->QFileDialog::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) {
        // QFileDialog* QFileDialog(QWidget*, QFlags<Qt::WindowType>)
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)x[1].s_class,(QFlags<Qt::WindowType>)x[2].s_uint);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileDialog(QWidget* x1, QFlags<Qt::WindowType> x2) : QFileDialog(x1, x2) {}
    static void x_9(Smoke::Stack x) {
        // QFileDialog* QFileDialog(QWidget*, const QString&, const QString&, const QString&)
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileDialog(QWidget* x1, const QString& x2, const QString& x3, const QString& x4) : QFileDialog(x1, x2, x3, x4) {}
    void x_10(Smoke::Stack x) {
        // void setDirectory(const QString&)
        this->QFileDialog::setDirectory(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setDirectory(const QDir&)
        this->QFileDialog::setDirectory(*(const QDir*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QDir directory() const
        QDir xret = ((const x_QFileDialog*)this)->QFileDialog::directory();
        x[0].s_class = (void*)new QDir(xret);
    }
    void x_13(Smoke::Stack x) {
        // void selectFile(const QString&)
        this->QFileDialog::selectFile(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QStringList selectedFiles() const
        QStringList xret = ((const x_QFileDialog*)this)->QFileDialog::selectedFiles();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_15(Smoke::Stack x) {
        // void setFilter(const QString&)
        this->QFileDialog::setFilter(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void setFilters(const QStringList&)
        this->QFileDialog::setFilters(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // QStringList filters() const
        QStringList xret = ((const x_QFileDialog*)this)->QFileDialog::filters();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_18(Smoke::Stack x) {
        // void selectFilter(const QString&)
        this->QFileDialog::selectFilter(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QString selectedFilter() const
        QString xret = ((const x_QFileDialog*)this)->QFileDialog::selectedFilter();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_20(Smoke::Stack x) {
        // void setNameFilterDetailsVisible(bool)
        this->QFileDialog::setNameFilterDetailsVisible((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // bool isNameFilterDetailsVisible() const
        bool xret = ((const x_QFileDialog*)this)->QFileDialog::isNameFilterDetailsVisible();
        x[0].s_bool = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setNameFilter(const QString&)
        this->QFileDialog::setNameFilter(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void setNameFilters(const QStringList&)
        this->QFileDialog::setNameFilters(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // QStringList nameFilters() const
        QStringList xret = ((const x_QFileDialog*)this)->QFileDialog::nameFilters();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_25(Smoke::Stack x) {
        // void selectNameFilter(const QString&)
        this->QFileDialog::selectNameFilter(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // QString selectedNameFilter() const
        QString xret = ((const x_QFileDialog*)this)->QFileDialog::selectedNameFilter();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_27(Smoke::Stack x) {
        // QFlags<QDir::Filter> filter() const
        QFlags<QDir::Filter> xret = ((const x_QFileDialog*)this)->QFileDialog::filter();
        x[0].s_uint = (uint)xret;
    }
    void x_28(Smoke::Stack x) {
        // void setFilter(QFlags<QDir::Filter>)
        this->QFileDialog::setFilter((QFlags<QDir::Filter>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void setViewMode(QFileDialog::ViewMode)
        this->QFileDialog::setViewMode((QFileDialog::ViewMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // QFileDialog::ViewMode viewMode() const
        QFileDialog::ViewMode xret = ((const x_QFileDialog*)this)->QFileDialog::viewMode();
        x[0].s_enum = xret;
    }
    void x_31(Smoke::Stack x) {
        // void setFileMode(QFileDialog::FileMode)
        this->QFileDialog::setFileMode((QFileDialog::FileMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // QFileDialog::FileMode fileMode() const
        QFileDialog::FileMode xret = ((const x_QFileDialog*)this)->QFileDialog::fileMode();
        x[0].s_enum = xret;
    }
    void x_33(Smoke::Stack x) {
        // void setAcceptMode(QFileDialog::AcceptMode)
        this->QFileDialog::setAcceptMode((QFileDialog::AcceptMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_34(Smoke::Stack x) {
        // QFileDialog::AcceptMode acceptMode() const
        QFileDialog::AcceptMode xret = ((const x_QFileDialog*)this)->QFileDialog::acceptMode();
        x[0].s_enum = xret;
    }
    void x_35(Smoke::Stack x) {
        // void setReadOnly(bool)
        this->QFileDialog::setReadOnly((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // bool isReadOnly() const
        bool xret = ((const x_QFileDialog*)this)->QFileDialog::isReadOnly();
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // void setResolveSymlinks(bool)
        this->QFileDialog::setResolveSymlinks((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // bool resolveSymlinks() const
        bool xret = ((const x_QFileDialog*)this)->QFileDialog::resolveSymlinks();
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // void setSidebarUrls(const QList<QUrl>&)
        this->QFileDialog::setSidebarUrls(*(const QList<QUrl>*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // QList<QUrl> sidebarUrls() const
        QList<QUrl> xret = ((const x_QFileDialog*)this)->QFileDialog::sidebarUrls();
        x[0].s_class = (void*)new QList<QUrl>(xret);
    }
    void x_41(Smoke::Stack x) {
        // QByteArray saveState() const
        QByteArray xret = ((const x_QFileDialog*)this)->QFileDialog::saveState();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_42(Smoke::Stack x) {
        // bool restoreState(const QByteArray&)
        bool xret = this->QFileDialog::restoreState(*(const QByteArray*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_43(Smoke::Stack x) {
        // void setConfirmOverwrite(bool)
        this->QFileDialog::setConfirmOverwrite((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // bool confirmOverwrite() const
        bool xret = ((const x_QFileDialog*)this)->QFileDialog::confirmOverwrite();
        x[0].s_bool = xret;
    }
    void x_45(Smoke::Stack x) {
        // void setDefaultSuffix(const QString&)
        this->QFileDialog::setDefaultSuffix(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_46(Smoke::Stack x) {
        // QString defaultSuffix() const
        QString xret = ((const x_QFileDialog*)this)->QFileDialog::defaultSuffix();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_47(Smoke::Stack x) {
        // void setHistory(const QStringList&)
        this->QFileDialog::setHistory(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // QStringList history() const
        QStringList xret = ((const x_QFileDialog*)this)->QFileDialog::history();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_49(Smoke::Stack x) {
        // void setItemDelegate(QAbstractItemDelegate*)
        this->QFileDialog::setItemDelegate((QAbstractItemDelegate*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_50(Smoke::Stack x) {
        // QAbstractItemDelegate* itemDelegate() const
        QAbstractItemDelegate* xret = ((const x_QFileDialog*)this)->QFileDialog::itemDelegate();
        x[0].s_class = (void*)xret;
    }
    void x_51(Smoke::Stack x) {
        // void setIconProvider(QFileIconProvider*)
        this->QFileDialog::setIconProvider((QFileIconProvider*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_52(Smoke::Stack x) {
        // QFileIconProvider* iconProvider() const
        QFileIconProvider* xret = ((const x_QFileDialog*)this)->QFileDialog::iconProvider();
        x[0].s_class = (void*)xret;
    }
    void x_53(Smoke::Stack x) {
        // void setLabelText(QFileDialog::DialogLabel, const QString&)
        this->QFileDialog::setLabelText((QFileDialog::DialogLabel)x[1].s_enum,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_54(Smoke::Stack x) {
        // QString labelText(QFileDialog::DialogLabel) const
        QString xret = ((const x_QFileDialog*)this)->QFileDialog::labelText((QFileDialog::DialogLabel)x[1].s_enum);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_55(Smoke::Stack x) {
        // void setProxyModel(QAbstractProxyModel*)
        this->QFileDialog::setProxyModel((QAbstractProxyModel*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_56(Smoke::Stack x) {
        // QAbstractProxyModel* proxyModel() const
        QAbstractProxyModel* xret = ((const x_QFileDialog*)this)->QFileDialog::proxyModel();
        x[0].s_class = (void*)xret;
    }
    void x_57(Smoke::Stack x) {
        // void setOption(QFileDialog::Option, bool)
        this->QFileDialog::setOption((QFileDialog::Option)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_58(Smoke::Stack x) {
        // bool testOption(QFileDialog::Option) const
        bool xret = ((const x_QFileDialog*)this)->QFileDialog::testOption((QFileDialog::Option)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_59(Smoke::Stack x) {
        // void setOptions(QFlags<QFileDialog::Option>)
        this->QFileDialog::setOptions((QFlags<QFileDialog::Option>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_60(Smoke::Stack x) {
        // QFlags<QFileDialog::Option> options() const
        QFlags<QFileDialog::Option> xret = ((const x_QFileDialog*)this)->QFileDialog::options();
        x[0].s_uint = (uint)xret;
    }
    void x_61(Smoke::Stack x) {
        // void open()
        this->QFileDialog::open();
        (void)x; // noop (for compiler warning)
    }
    void x_62(Smoke::Stack x) {
        // void open(QObject*, const char*)
        this->QFileDialog::open((QObject*)x[1].s_class,(const char*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_63(Smoke::Stack x) {
        // void setVisible(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileDialog*>(this))) {
            this->QFileDialog::setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_64(Smoke::Stack x) {
        // void fileSelected(const QString&)
        this->QFileDialog::fileSelected(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_65(Smoke::Stack x) {
        // void filesSelected(const QStringList&)
        this->QFileDialog::filesSelected(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_66(Smoke::Stack x) {
        // void currentChanged(const QString&)
        this->QFileDialog::currentChanged(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_67(Smoke::Stack x) {
        // void directoryEntered(const QString&)
        this->QFileDialog::directoryEntered(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_68(Smoke::Stack x) {
        // void filterSelected(const QString&)
        this->QFileDialog::filterSelected(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_69(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*, const QString&, const QString&, const QString&, QString*, QFlags<QFileDialog::Option>)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)x[6].s_uint);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_70(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*, const QString&, const QString&, const QString&, QString*, QFlags<QFileDialog::Option>)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)x[6].s_uint);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_71(Smoke::Stack x) {
        // static QString getExistingDirectory(QWidget*, const QString&, const QString&, QFlags<QFileDialog::Option>)
        QString xret = QFileDialog::getExistingDirectory((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(QFlags<QFileDialog::Option>)x[4].s_uint);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_72(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*, const QString&, const QString&, const QString&, QString*, QFlags<QFileDialog::Option>)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)x[6].s_uint);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_73(Smoke::Stack x) {
        // QFileDialog* QFileDialog(const QFileDialogArgs&)
        x_QFileDialog* xret = new x_QFileDialog(*(const QFileDialogArgs*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileDialog(const QFileDialogArgs& x1) : QFileDialog(x1) {}
    void x_74(Smoke::Stack x) {
        // void done(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileDialog*>(this))) {
            this->QFileDialog::done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_75(Smoke::Stack x) {
        // void accept()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileDialog*>(this))) {
            this->QFileDialog::accept();
            (void)x; // noop (for compiler warning)
        } else {
            this->accept();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_76(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileDialog*>(this))) {
            this->QFileDialog::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)
        }
    }
    static void x_77(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFileDialog::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_78(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFileDialog::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_79(Smoke::Stack x) {
        // QFileDialog* QFileDialog()
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)0,(const QString&)QString(),(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_80(Smoke::Stack x) {
        // QFileDialog* QFileDialog(QWidget*)
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)x[1].s_class,(const QString&)QString(),(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_81(Smoke::Stack x) {
        // QFileDialog* QFileDialog(QWidget*, const QString&)
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_82(Smoke::Stack x) {
        // QFileDialog* QFileDialog(QWidget*, const QString&, const QString&)
        x_QFileDialog* xret = new x_QFileDialog((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    void x_83(Smoke::Stack x) {
        // void setOption(QFileDialog::Option)
        this->QFileDialog::setOption((QFileDialog::Option)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    static void x_84(Smoke::Stack x) {
        // static QString getOpenFileName()
        QString xret = QFileDialog::getOpenFileName((QWidget*)0,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_85(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_86(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*, const QString&)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_87(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*, const QString&, const QString&)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_88(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*, const QString&, const QString&, const QString&)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_89(Smoke::Stack x) {
        // static QString getOpenFileName(QWidget*, const QString&, const QString&, const QString&, QString*)
        QString xret = QFileDialog::getOpenFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_90(Smoke::Stack x) {
        // static QString getSaveFileName()
        QString xret = QFileDialog::getSaveFileName((QWidget*)0,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_91(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_92(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*, const QString&)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_93(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*, const QString&, const QString&)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_94(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*, const QString&, const QString&, const QString&)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_95(Smoke::Stack x) {
        // static QString getSaveFileName(QWidget*, const QString&, const QString&, const QString&, QString*)
        QString xret = QFileDialog::getSaveFileName((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_96(Smoke::Stack x) {
        // static QString getExistingDirectory()
        QString xret = QFileDialog::getExistingDirectory((QWidget*)0,(const QString&)QString(),(const QString&)QString(),(QFlags<QFileDialog::Option>)QFileDialog::ShowDirsOnly);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_97(Smoke::Stack x) {
        // static QString getExistingDirectory(QWidget*)
        QString xret = QFileDialog::getExistingDirectory((QWidget*)x[1].s_class,(const QString&)QString(),(const QString&)QString(),(QFlags<QFileDialog::Option>)QFileDialog::ShowDirsOnly);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_98(Smoke::Stack x) {
        // static QString getExistingDirectory(QWidget*, const QString&)
        QString xret = QFileDialog::getExistingDirectory((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString(),(QFlags<QFileDialog::Option>)QFileDialog::ShowDirsOnly);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_99(Smoke::Stack x) {
        // static QString getExistingDirectory(QWidget*, const QString&, const QString&)
        QString xret = QFileDialog::getExistingDirectory((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(QFlags<QFileDialog::Option>)QFileDialog::ShowDirsOnly);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_100(Smoke::Stack x) {
        // static QStringList getOpenFileNames()
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)0,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_101(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,(const QString&)QString(),(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_102(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*, const QString&)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString(),(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_103(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*, const QString&, const QString&)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(const QString&)QString(),(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_104(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*, const QString&, const QString&, const QString&)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)0,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_105(Smoke::Stack x) {
        // static QStringList getOpenFileNames(QWidget*, const QString&, const QString&, const QString&, QString*)
        QStringList xret = QFileDialog::getOpenFileNames((QWidget*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QString*)x[5].s_class,(QFlags<QFileDialog::Option>)0);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_106(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFileDialog::staticMetaObject;
    }
    static void x_107(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::Detail;
    }
    static void x_108(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::List;
    }
    static void x_109(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::AnyFile;
    }
    static void x_110(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::ExistingFile;
    }
    static void x_111(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::Directory;
    }
    static void x_112(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::ExistingFiles;
    }
    static void x_113(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DirectoryOnly;
    }
    static void x_114(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::AcceptOpen;
    }
    static void x_115(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::AcceptSave;
    }
    static void x_116(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::LookIn;
    }
    static void x_117(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::FileName;
    }
    static void x_118(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::FileType;
    }
    static void x_119(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::Accept;
    }
    static void x_120(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::Reject;
    }
    static void x_121(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::ShowDirsOnly;
    }
    static void x_122(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DontResolveSymlinks;
    }
    static void x_123(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DontConfirmOverwrite;
    }
    static void x_124(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DontUseSheet;
    }
    static void x_125(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DontUseNativeDialog;
    }
    static void x_126(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::ReadOnly;
    }
    static void x_127(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::HideNameFilterDetails;
    }
    static void x_128(Smoke::Stack x) {
        x[0].s_enum = (long)QFileDialog::DontUseCustomDirectoryIcons;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2955, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFileDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2956, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFileDialog::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(2961, (void*)this, x)) return (int)x[0].s_int;
        return this->QFileDialog::qt_metacall(x1, x2, x3);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3028, (void*)this, x)) return;
        this->QFileDialog::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3029, (void*)this, x)) return;
        this->QFileDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2581, (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(3017, (void*)this, x)) return;
        this->QFileDialog::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2568, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2569, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(15568, (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(15617, (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(15618, (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(15619, (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(15620, (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(15621, (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(2583, (void*)this, x)) return;
        this->QDialog::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15623, (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(15624, (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(15625, (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(15626, (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(15627, (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(15628, (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(15629, (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(2586, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2584, (void*)this, x)) return;
        this->QDialog::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2587, (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(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(2585, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15640, (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(15641, (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(3030, (void*)this, x)) return;
        this->QFileDialog::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15644, (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(15645, (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(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(15616, (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(2588, (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(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (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 186: //QFileDialog::ViewMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileDialog::ViewMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileDialog::ViewMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileDialog::ViewMode*)xdata = (QFileDialog::ViewMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileDialog::ViewMode*)xdata;
                    break;
            }
            break;
        case 184: //QFileDialog::FileMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileDialog::FileMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileDialog::FileMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileDialog::FileMode*)xdata = (QFileDialog::FileMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileDialog::FileMode*)xdata;
                    break;
            }
            break;
        case 182: //QFileDialog::AcceptMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileDialog::AcceptMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileDialog::AcceptMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileDialog::AcceptMode*)xdata = (QFileDialog::AcceptMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileDialog::AcceptMode*)xdata;
                    break;
            }
            break;
        case 183: //QFileDialog::DialogLabel
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileDialog::DialogLabel;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileDialog::DialogLabel*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileDialog::DialogLabel*)xdata = (QFileDialog::DialogLabel)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileDialog::DialogLabel*)xdata;
                    break;
            }
            break;
        case 185: //QFileDialog::Option
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileDialog::Option;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileDialog::Option*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileDialog::Option*)xdata = (QFileDialog::Option)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileDialog::Option*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFileDialog() { this->_binding->deleted(103, (void*)this); }
};
void xenum_QFileDialog(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFileDialog::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFileDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFileDialog *xself = (x_QFileDialog*)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_QFileDialog::x_3(args);	break;
        case 4: x_QFileDialog::x_4(args);	break;
        case 5: x_QFileDialog::x_5(args);	break;
        case 6: x_QFileDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFileDialog::x_8(args);	break;
        case 9: x_QFileDialog::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: xself->x_51(args);	break;
        case 52: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: xself->x_57(args);	break;
        case 58: xself->x_58(args);	break;
        case 59: xself->x_59(args);	break;
        case 60: xself->x_60(args);	break;
        case 61: xself->x_61(args);	break;
        case 62: xself->x_62(args);	break;
        case 63: xself->x_63(args);	break;
        case 64: xself->x_64(args);	break;
        case 65: xself->x_65(args);	break;
        case 66: xself->x_66(args);	break;
        case 67: xself->x_67(args);	break;
        case 68: xself->x_68(args);	break;
        case 69: x_QFileDialog::x_69(args);	break;
        case 70: x_QFileDialog::x_70(args);	break;
        case 71: x_QFileDialog::x_71(args);	break;
        case 72: x_QFileDialog::x_72(args);	break;
        case 73: x_QFileDialog::x_73(args);	break;
        case 74: xself->x_74(args);	break;
        case 75: xself->x_75(args);	break;
        case 76: xself->x_76(args);	break;
        case 77: x_QFileDialog::x_77(args);	break;
        case 78: x_QFileDialog::x_78(args);	break;
        case 79: x_QFileDialog::x_79(args);	break;
        case 80: x_QFileDialog::x_80(args);	break;
        case 81: x_QFileDialog::x_81(args);	break;
        case 82: x_QFileDialog::x_82(args);	break;
        case 83: xself->x_83(args);	break;
        case 84: x_QFileDialog::x_84(args);	break;
        case 85: x_QFileDialog::x_85(args);	break;
        case 86: x_QFileDialog::x_86(args);	break;
        case 87: x_QFileDialog::x_87(args);	break;
        case 88: x_QFileDialog::x_88(args);	break;
        case 89: x_QFileDialog::x_89(args);	break;
        case 90: x_QFileDialog::x_90(args);	break;
        case 91: x_QFileDialog::x_91(args);	break;
        case 92: x_QFileDialog::x_92(args);	break;
        case 93: x_QFileDialog::x_93(args);	break;
        case 94: x_QFileDialog::x_94(args);	break;
        case 95: x_QFileDialog::x_95(args);	break;
        case 96: x_QFileDialog::x_96(args);	break;
        case 97: x_QFileDialog::x_97(args);	break;
        case 98: x_QFileDialog::x_98(args);	break;
        case 99: x_QFileDialog::x_99(args);	break;
        case 100: x_QFileDialog::x_100(args);	break;
        case 101: x_QFileDialog::x_101(args);	break;
        case 102: x_QFileDialog::x_102(args);	break;
        case 103: x_QFileDialog::x_103(args);	break;
        case 104: x_QFileDialog::x_104(args);	break;
        case 105: x_QFileDialog::x_105(args);	break;
        case 106: x_QFileDialog::x_106(args);	break;
        case 107: x_QFileDialog::x_107(args);	break;
        case 108: x_QFileDialog::x_108(args);	break;
        case 109: x_QFileDialog::x_109(args);	break;
        case 110: x_QFileDialog::x_110(args);	break;
        case 111: x_QFileDialog::x_111(args);	break;
        case 112: x_QFileDialog::x_112(args);	break;
        case 113: x_QFileDialog::x_113(args);	break;
        case 114: x_QFileDialog::x_114(args);	break;
        case 115: x_QFileDialog::x_115(args);	break;
        case 116: x_QFileDialog::x_116(args);	break;
        case 117: x_QFileDialog::x_117(args);	break;
        case 118: x_QFileDialog::x_118(args);	break;
        case 119: x_QFileDialog::x_119(args);	break;
        case 120: x_QFileDialog::x_120(args);	break;
        case 121: x_QFileDialog::x_121(args);	break;
        case 122: x_QFileDialog::x_122(args);	break;
        case 123: x_QFileDialog::x_123(args);	break;
        case 124: x_QFileDialog::x_124(args);	break;
        case 125: x_QFileDialog::x_125(args);	break;
        case 126: x_QFileDialog::x_126(args);	break;
        case 127: x_QFileDialog::x_127(args);	break;
        case 128: x_QFileDialog::x_128(args);	break;
        case 129: delete (QFileDialog*)xself;	break;
    }
}
class x_QFileIconProvider : public QFileIconProvider, 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) {
        // QFileIconProvider* QFileIconProvider()
        x_QFileIconProvider* xret = new x_QFileIconProvider();
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileIconProvider() : QFileIconProvider() {}
    void x_2(Smoke::Stack x) {
        // virtual QIcon icon(QFileIconProvider::IconType) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileIconProvider*>(this))) {
            QIcon xret = ((const x_QFileIconProvider*)this)->QFileIconProvider::icon((QFileIconProvider::IconType)x[1].s_enum);
            x[0].s_class = (void*)new QIcon(xret);
        } else {
            QIcon xret = ((const x_QFileIconProvider*)this)->icon((QFileIconProvider::IconType)x[1].s_enum);
            x[0].s_class = (void*)new QIcon(xret);
        }
    }
    void x_3(Smoke::Stack x) {
        // virtual QIcon icon(const QFileInfo&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileIconProvider*>(this))) {
            QIcon xret = ((const x_QFileIconProvider*)this)->QFileIconProvider::icon(*(const QFileInfo*)x[1].s_class);
            x[0].s_class = (void*)new QIcon(xret);
        } else {
            QIcon xret = ((const x_QFileIconProvider*)this)->icon(*(const QFileInfo*)x[1].s_class);
            x[0].s_class = (void*)new QIcon(xret);
        }
    }
    void x_4(Smoke::Stack x) {
        // virtual QString type(const QFileInfo&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileIconProvider*>(this))) {
            QString xret = ((const x_QFileIconProvider*)this)->QFileIconProvider::type(*(const QFileInfo*)x[1].s_class);
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = ((const x_QFileIconProvider*)this)->type(*(const QFileInfo*)x[1].s_class);
            x[0].s_class = (void*)new QString(xret);
        }
    }
    static void x_5(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Computer;
    }
    static void x_6(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Desktop;
    }
    static void x_7(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Trashcan;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Network;
    }
    static void x_9(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Drive;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::Folder;
    }
    static void x_11(Smoke::Stack x) {
        x[0].s_enum = (long)QFileIconProvider::File;
    }
    virtual QIcon icon(QFileIconProvider::IconType x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(3085, (void*)this, x)) {
            QIcon* xptr = (QIcon*)x[0].s_class;
            QIcon xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileIconProvider::icon(x1);
    }
    virtual QIcon icon(const QFileInfo& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3086, (void*)this, x)) {
            QIcon* xptr = (QIcon*)x[0].s_class;
            QIcon xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileIconProvider::icon(x1);
    }
    virtual QString type(const QFileInfo& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3087, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileIconProvider::type(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 188: //QFileIconProvider::IconType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileIconProvider::IconType;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileIconProvider::IconType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileIconProvider::IconType*)xdata = (QFileIconProvider::IconType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileIconProvider::IconType*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFileIconProvider() { this->_binding->deleted(105, (void*)this); }
};
void xenum_QFileIconProvider(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFileIconProvider::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFileIconProvider(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFileIconProvider *xself = (x_QFileIconProvider*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFileIconProvider::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QFileIconProvider::x_5(args);	break;
        case 6: x_QFileIconProvider::x_6(args);	break;
        case 7: x_QFileIconProvider::x_7(args);	break;
        case 8: x_QFileIconProvider::x_8(args);	break;
        case 9: x_QFileIconProvider::x_9(args);	break;
        case 10: x_QFileIconProvider::x_10(args);	break;
        case 11: x_QFileIconProvider::x_11(args);	break;
        case 12: delete (QFileIconProvider*)xself;	break;
    }
}
class x_QFileOpenEvent : public QFileOpenEvent, 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) {
        // QFileOpenEvent* QFileOpenEvent(const QString&)
        x_QFileOpenEvent* xret = new x_QFileOpenEvent(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileOpenEvent(const QString& x1) : QFileOpenEvent(x1) {}
    static void x_2(Smoke::Stack x) {
        // QFileOpenEvent* QFileOpenEvent(const QUrl&)
        x_QFileOpenEvent* xret = new x_QFileOpenEvent(*(const QUrl*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileOpenEvent(const QUrl& x1) : QFileOpenEvent(x1) {}
    void x_3(Smoke::Stack x) {
        // QString file() const
        QString xret = ((const x_QFileOpenEvent*)this)->QFileOpenEvent::file();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_4(Smoke::Stack x) {
        // QUrl url() const
        QUrl xret = ((const x_QFileOpenEvent*)this)->QFileOpenEvent::url();
        x[0].s_class = (void*)new QUrl(xret);
    }
    void x_5(Smoke::Stack x) {
        // bool openFile(QFile&, QFlags<QIODevice::OpenModeFlag>) const
        bool xret = ((const x_QFileOpenEvent*)this)->QFileOpenEvent::openFile(*(QFile*)x[1].s_class,(QFlags<QIODevice::OpenModeFlag>)x[2].s_uint);
        x[0].s_bool = xret;
    }
    static void x_6(Smoke::Stack x) {
        // QFileOpenEvent* QFileOpenEvent(const QFileOpenEvent&)
        x_QFileOpenEvent* xret = new x_QFileOpenEvent(*(const QFileOpenEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileOpenEvent(const QFileOpenEvent& x1) : QFileOpenEvent(x1) {}
    ~x_QFileOpenEvent() { this->_binding->deleted(107, (void*)this); }
};
void xcall_QFileOpenEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFileOpenEvent *xself = (x_QFileOpenEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFileOpenEvent::x_1(args);	break;
        case 2: x_QFileOpenEvent::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: x_QFileOpenEvent::x_6(args);	break;
        case 7: delete (QFileOpenEvent*)xself;	break;
    }
}
class x_QFileSystemModel : public QFileSystemModel, 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<QFileSystemModel*>(this))) {
            const QMetaObject* xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFileSystemModel*)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<QFileSystemModel*>(this))) {
            void* xret = this->QFileSystemModel::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 = QFileSystemModel::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 = QFileSystemModel::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 = QFileSystemModel::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 = QFileSystemModel::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<QFileSystemModel*>(this))) {
            int xret = this->QFileSystemModel::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;
        }
    }
    void x_8(Smoke::Stack x) {
        // void rootPathChanged(const QString&)
        this->QFileSystemModel::rootPathChanged(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // void fileRenamed(const QString&, const QString&, const QString&)
        this->QFileSystemModel::fileRenamed(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void directoryLoaded(const QString&)
        this->QFileSystemModel::directoryLoaded(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_11(Smoke::Stack x) {
        // QFileSystemModel* QFileSystemModel(QObject*)
        x_QFileSystemModel* xret = new x_QFileSystemModel((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFileSystemModel(QObject* x1) : QFileSystemModel(x1) {}
    void x_12(Smoke::Stack x) {
        // QModelIndex index(int, int, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QModelIndex xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::index((int)x[1].s_int,(int)x[2].s_int,*(const QModelIndex*)x[3].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        } else {
            QModelIndex xret = ((const x_QFileSystemModel*)this)->index((int)x[1].s_int,(int)x[2].s_int,*(const QModelIndex*)x[3].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        }
    }
    void x_13(Smoke::Stack x) {
        // QModelIndex index(const QString&, int) const
        QModelIndex xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::index(*(const QString*)x[1].s_class,(int)x[2].s_int);
        x[0].s_class = (void*)new QModelIndex(xret);
    }
    void x_14(Smoke::Stack x) {
        // QModelIndex parent(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QModelIndex xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::parent(*(const QModelIndex*)x[1].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        } else {
            QModelIndex xret = ((const x_QFileSystemModel*)this)->parent(*(const QModelIndex*)x[1].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        }
    }
    void x_15(Smoke::Stack x) {
        // bool hasChildren(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::hasChildren(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QFileSystemModel*)this)->hasChildren(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_16(Smoke::Stack x) {
        // bool canFetchMore(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::canFetchMore(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QFileSystemModel*)this)->canFetchMore(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // void fetchMore(const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            this->QFileSystemModel::fetchMore(*(const QModelIndex*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->fetchMore(*(const QModelIndex*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_18(Smoke::Stack x) {
        // int rowCount(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            int xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::rowCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QFileSystemModel*)this)->rowCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        }
    }
    void x_19(Smoke::Stack x) {
        // int columnCount(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            int xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::columnCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QFileSystemModel*)this)->columnCount(*(const QModelIndex*)x[1].s_class);
            x[0].s_int = xret;
        }
    }
    void x_20(Smoke::Stack x) {
        // QVariant myComputer(int) const
        QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::myComputer((int)x[1].s_int);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_21(Smoke::Stack x) {
        // QVariant data(const QModelIndex&, int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::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_QFileSystemModel*)this)->data(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_22(Smoke::Stack x) {
        // bool setData(const QModelIndex&, const QVariant&, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            bool xret = this->QFileSystemModel::setData(*(const QModelIndex*)x[1].s_class,*(const QVariant*)x[2].s_class,(int)x[3].s_int);
            x[0].s_bool = xret;
        } else {
            bool xret = this->setData(*(const QModelIndex*)x[1].s_class,*(const QVariant*)x[2].s_class,(int)x[3].s_int);
            x[0].s_bool = xret;
        }
    }
    void x_23(Smoke::Stack x) {
        // QVariant headerData(int, Qt::Orientation, int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::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_QFileSystemModel*)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);
        }
    }
    void x_24(Smoke::Stack x) {
        // QFlags<Qt::ItemFlag> flags(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QFlags<Qt::ItemFlag> xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::flags(*(const QModelIndex*)x[1].s_class);
            x[0].s_uint = (uint)xret;
        } else {
            QFlags<Qt::ItemFlag> xret = ((const x_QFileSystemModel*)this)->flags(*(const QModelIndex*)x[1].s_class);
            x[0].s_uint = (uint)xret;
        }
    }
    void x_25(Smoke::Stack x) {
        // void sort(int, Qt::SortOrder)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            this->QFileSystemModel::sort((int)x[1].s_int,(Qt::SortOrder)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->sort((int)x[1].s_int,(Qt::SortOrder)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_26(Smoke::Stack x) {
        // QStringList mimeTypes() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QStringList xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::mimeTypes();
            x[0].s_class = (void*)new QStringList(xret);
        } else {
            QStringList xret = ((const x_QFileSystemModel*)this)->mimeTypes();
            x[0].s_class = (void*)new QStringList(xret);
        }
    }
    void x_27(Smoke::Stack x) {
        // QMimeData* mimeData(const QList<QModelIndex>&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QMimeData* xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::mimeData(*(const QList<QModelIndex>*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            QMimeData* xret = ((const x_QFileSystemModel*)this)->mimeData(*(const QList<QModelIndex>*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    void x_28(Smoke::Stack x) {
        // bool dropMimeData(const QMimeData*, Qt::DropAction, int, int, const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            bool xret = this->QFileSystemModel::dropMimeData((const QMimeData*)x[1].s_class,(Qt::DropAction)x[2].s_enum,(int)x[3].s_int,(int)x[4].s_int,*(const QModelIndex*)x[5].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->dropMimeData((const QMimeData*)x[1].s_class,(Qt::DropAction)x[2].s_enum,(int)x[3].s_int,(int)x[4].s_int,*(const QModelIndex*)x[5].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_29(Smoke::Stack x) {
        // QFlags<Qt::DropAction> supportedDropActions() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            QFlags<Qt::DropAction> xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::supportedDropActions();
            x[0].s_uint = (uint)xret;
        } else {
            QFlags<Qt::DropAction> xret = ((const x_QFileSystemModel*)this)->supportedDropActions();
            x[0].s_uint = (uint)xret;
        }
    }
    void x_30(Smoke::Stack x) {
        // QModelIndex setRootPath(const QString&)
        QModelIndex xret = this->QFileSystemModel::setRootPath(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QModelIndex(xret);
    }
    void x_31(Smoke::Stack x) {
        // QString rootPath() const
        QString xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::rootPath();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_32(Smoke::Stack x) {
        // QDir rootDirectory() const
        QDir xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::rootDirectory();
        x[0].s_class = (void*)new QDir(xret);
    }
    void x_33(Smoke::Stack x) {
        // void setIconProvider(QFileIconProvider*)
        this->QFileSystemModel::setIconProvider((QFileIconProvider*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_34(Smoke::Stack x) {
        // QFileIconProvider* iconProvider() const
        QFileIconProvider* xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::iconProvider();
        x[0].s_class = (void*)xret;
    }
    void x_35(Smoke::Stack x) {
        // void setFilter(QFlags<QDir::Filter>)
        this->QFileSystemModel::setFilter((QFlags<QDir::Filter>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // QFlags<QDir::Filter> filter() const
        QFlags<QDir::Filter> xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::filter();
        x[0].s_uint = (uint)xret;
    }
    void x_37(Smoke::Stack x) {
        // void setResolveSymlinks(bool)
        this->QFileSystemModel::setResolveSymlinks((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // bool resolveSymlinks() const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::resolveSymlinks();
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // void setReadOnly(bool)
        this->QFileSystemModel::setReadOnly((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // bool isReadOnly() const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::isReadOnly();
        x[0].s_bool = xret;
    }
    void x_41(Smoke::Stack x) {
        // void setNameFilterDisables(bool)
        this->QFileSystemModel::setNameFilterDisables((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // bool nameFilterDisables() const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::nameFilterDisables();
        x[0].s_bool = xret;
    }
    void x_43(Smoke::Stack x) {
        // void setNameFilters(const QStringList&)
        this->QFileSystemModel::setNameFilters(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // QStringList nameFilters() const
        QStringList xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::nameFilters();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_45(Smoke::Stack x) {
        // QString filePath(const QModelIndex&) const
        QString xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::filePath(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_46(Smoke::Stack x) {
        // bool isDir(const QModelIndex&) const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::isDir(*(const QModelIndex*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_47(Smoke::Stack x) {
        // long long size(const QModelIndex&) const
        long long xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::size(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new long long(xret);
    }
    void x_48(Smoke::Stack x) {
        // QString type(const QModelIndex&) const
        QString xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::type(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_49(Smoke::Stack x) {
        // QDateTime lastModified(const QModelIndex&) const
        QDateTime xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::lastModified(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QDateTime(xret);
    }
    void x_50(Smoke::Stack x) {
        // QModelIndex mkdir(const QModelIndex&, const QString&)
        QModelIndex xret = this->QFileSystemModel::mkdir(*(const QModelIndex*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QModelIndex(xret);
    }
    void x_51(Smoke::Stack x) {
        // bool rmdir(const QModelIndex&) const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::rmdir(*(const QModelIndex*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_52(Smoke::Stack x) {
        // QString fileName(const QModelIndex&) const
        QString xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::fileName(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_53(Smoke::Stack x) {
        // QIcon fileIcon(const QModelIndex&) const
        QIcon xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::fileIcon(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QIcon(xret);
    }
    void x_54(Smoke::Stack x) {
        // QFlags<QFile::Permission> permissions(const QModelIndex&) const
        QFlags<QFile::Permission> xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::permissions(*(const QModelIndex*)x[1].s_class);
        x[0].s_uint = (uint)xret;
    }
    void x_55(Smoke::Stack x) {
        // QFileInfo fileInfo(const QModelIndex&) const
        QFileInfo xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::fileInfo(*(const QModelIndex*)x[1].s_class);
        x[0].s_class = (void*)new QFileInfo(xret);
    }
    void x_56(Smoke::Stack x) {
        // bool remove(const QModelIndex&) const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::remove(*(const QModelIndex*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_57(Smoke::Stack x) {
        // void timerEvent(QTimerEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            this->QFileSystemModel::timerEvent((QTimerEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->timerEvent((QTimerEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_58(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFileSystemModel*>(this))) {
            bool xret = this->QFileSystemModel::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_59(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFileSystemModel::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_60(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFileSystemModel::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_61(Smoke::Stack x) {
        // QFileSystemModel* QFileSystemModel()
        x_QFileSystemModel* xret = new x_QFileSystemModel((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_62(Smoke::Stack x) {
        // QModelIndex index(int, int) const
        QModelIndex xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::index((int)x[1].s_int,(int)x[2].s_int,(const QModelIndex&)QModelIndex());
        x[0].s_class = (void*)new QModelIndex(xret);
    }
    void x_63(Smoke::Stack x) {
        // QModelIndex index(const QString&) const
        QModelIndex xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::index(*(const QString*)x[1].s_class,(int)0);
        x[0].s_class = (void*)new QModelIndex(xret);
    }
    void x_64(Smoke::Stack x) {
        // bool hasChildren() const
        bool xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::hasChildren((const QModelIndex&)QModelIndex());
        x[0].s_bool = xret;
    }
    void x_65(Smoke::Stack x) {
        // int rowCount() const
        int xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::rowCount((const QModelIndex&)QModelIndex());
        x[0].s_int = xret;
    }
    void x_66(Smoke::Stack x) {
        // int columnCount() const
        int xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::columnCount((const QModelIndex&)QModelIndex());
        x[0].s_int = xret;
    }
    void x_67(Smoke::Stack x) {
        // QVariant myComputer() const
        QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::myComputer((int)Qt::DisplayRole);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_68(Smoke::Stack x) {
        // QVariant data(const QModelIndex&) const
        QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::data(*(const QModelIndex*)x[1].s_class,(int)Qt::DisplayRole);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_69(Smoke::Stack x) {
        // bool setData(const QModelIndex&, const QVariant&)
        bool xret = this->QFileSystemModel::setData(*(const QModelIndex*)x[1].s_class,*(const QVariant*)x[2].s_class,(int)Qt::EditRole);
        x[0].s_bool = xret;
    }
    void x_70(Smoke::Stack x) {
        // QVariant headerData(int, Qt::Orientation) const
        QVariant xret = ((const x_QFileSystemModel*)this)->QFileSystemModel::headerData((int)x[1].s_int,(Qt::Orientation)x[2].s_enum,(int)Qt::DisplayRole);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_71(Smoke::Stack x) {
        // void sort(int)
        this->QFileSystemModel::sort((int)x[1].s_int,(Qt::SortOrder)Qt::AscendingOrder);
        (void)x; // noop (for compiler warning)
    }
    static void x_72(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFileSystemModel::staticMetaObject;
    }
    static void x_73(Smoke::Stack x) {
        x[0].s_enum = (long)QFileSystemModel::FileIconRole;
    }
    static void x_74(Smoke::Stack x) {
        x[0].s_enum = (long)QFileSystemModel::FilePathRole;
    }
    static void x_75(Smoke::Stack x) {
        x[0].s_enum = (long)QFileSystemModel::FileNameRole;
    }
    static void x_76(Smoke::Stack x) {
        x[0].s_enum = (long)QFileSystemModel::FilePermissions;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3103, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFileSystemModel::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3104, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFileSystemModel::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(3109, (void*)this, x)) return (int)x[0].s_int;
        return this->QFileSystemModel::qt_metacall(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(3114, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileSystemModel::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(3116, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileSystemModel::parent(x1);
    }
    virtual int rowCount(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3120, (void*)this, x)) return (int)x[0].s_int;
        return this->QFileSystemModel::rowCount(x1);
    }
    virtual int columnCount(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3121, (void*)this, x)) return (int)x[0].s_int;
        return this->QFileSystemModel::columnCount(x1);
    }
    virtual bool hasChildren(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3117, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFileSystemModel::hasChildren(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(3123, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileSystemModel::data(x1, x2);
    }
    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(3124, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFileSystemModel::setData(x1, x2, x3);
    }
    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(3125, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileSystemModel::headerData(x1, x2, x3);
    }
    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(106, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::setHeaderData(x1, x2, x3, x4);
    }
    virtual QMap<int,QVariant> itemData(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(107, (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(108, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::setItemData(x1, x2);
    }
    virtual QStringList mimeTypes() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3128, (void*)this, x)) {
            QStringList* xptr = (QStringList*)x[0].s_class;
            QStringList xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFileSystemModel::mimeTypes();
    }
    virtual QMimeData* mimeData(const QList<QModelIndex>& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3129, (void*)this, x)) return (QMimeData*)x[0].s_class;
        return this->QFileSystemModel::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(3130, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFileSystemModel::dropMimeData(x1, x2, x3, x4, x5);
    }
    virtual QFlags<Qt::DropAction> supportedDropActions() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3131, (void*)this, x)) return (QFlags<Qt::DropAction>)x[0].s_uint;
        return this->QFileSystemModel::supportedDropActions();
    }
    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(112, (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(113, (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(114, (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(115, (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(3119, (void*)this, x)) return;
        this->QFileSystemModel::fetchMore(x1);
    }
    virtual bool canFetchMore(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3118, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFileSystemModel::canFetchMore(x1);
    }
    virtual QFlags<Qt::ItemFlag> flags(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3126, (void*)this, x)) return (QFlags<Qt::ItemFlag>)x[0].s_uint;
        return this->QFileSystemModel::flags(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(3127, (void*)this, x)) return;
        this->QFileSystemModel::sort(x1, x2);
    }
    virtual QModelIndex buddy(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(118, (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(119, (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(120, (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(121, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemModel::submit();
    }
    virtual void revert() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(122, (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(3160, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFileSystemModel::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(8375, (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(3159, (void*)this, x)) return;
        this->QFileSystemModel::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (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(8378, (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(8379, (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(8380, (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 192: //QFileSystemModel::Roles
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFileSystemModel::Roles;
                    break;
                case Smoke::EnumDelete:
                    delete (QFileSystemModel::Roles*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFileSystemModel::Roles*)xdata = (QFileSystemModel::Roles)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFileSystemModel::Roles*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFileSystemModel() { this->_binding->deleted(108, (void*)this); }
};
void xenum_QFileSystemModel(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFileSystemModel::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFileSystemModel(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFileSystemModel *xself = (x_QFileSystemModel*)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_QFileSystemModel::x_3(args);	break;
        case 4: x_QFileSystemModel::x_4(args);	break;
        case 5: x_QFileSystemModel::x_5(args);	break;
        case 6: x_QFileSystemModel::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_QFileSystemModel::x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: xself->x_51(args);	break;
        case 52: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: xself->x_57(args);	break;
        case 58: xself->x_58(args);	break;
        case 59: x_QFileSystemModel::x_59(args);	break;
        case 60: x_QFileSystemModel::x_60(args);	break;
        case 61: x_QFileSystemModel::x_61(args);	break;
        case 62: xself->x_62(args);	break;
        case 63: xself->x_63(args);	break;
        case 64: xself->x_64(args);	break;
        case 65: xself->x_65(args);	break;
        case 66: xself->x_66(args);	break;
        case 67: xself->x_67(args);	break;
        case 68: xself->x_68(args);	break;
        case 69: xself->x_69(args);	break;
        case 70: xself->x_70(args);	break;
        case 71: xself->x_71(args);	break;
        case 72: x_QFileSystemModel::x_72(args);	break;
        case 73: x_QFileSystemModel::x_73(args);	break;
        case 74: x_QFileSystemModel::x_74(args);	break;
        case 75: x_QFileSystemModel::x_75(args);	break;
        case 76: x_QFileSystemModel::x_76(args);	break;
        case 77: delete (QFileSystemModel*)xself;	break;
    }
}
class x_QFocusEvent : public QFocusEvent, 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) {
        // QFocusEvent* QFocusEvent(QEvent::Type, Qt::FocusReason)
        x_QFocusEvent* xret = new x_QFocusEvent((QEvent::Type)x[1].s_enum,(Qt::FocusReason)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFocusEvent(QEvent::Type x1, Qt::FocusReason x2) : QFocusEvent(x1, x2) {}
    void x_2(Smoke::Stack x) {
        // bool gotFocus() const
        bool xret = ((const x_QFocusEvent*)this)->QFocusEvent::gotFocus();
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // bool lostFocus() const
        bool xret = ((const x_QFocusEvent*)this)->QFocusEvent::lostFocus();
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // Qt::FocusReason reason()
        Qt::FocusReason xret = this->QFocusEvent::reason();
        x[0].s_enum = xret;
    }
    void x_5(Smoke::Stack x) {
        // Qt::FocusReason reason() const
        Qt::FocusReason xret = ((const x_QFocusEvent*)this)->QFocusEvent::reason();
        x[0].s_enum = xret;
    }
    static void x_6(Smoke::Stack x) {
        // QFocusEvent* QFocusEvent(const QFocusEvent&)
        x_QFocusEvent* xret = new x_QFocusEvent(*(const QFocusEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFocusEvent(const QFocusEvent& x1) : QFocusEvent(x1) {}
    static void x_7(Smoke::Stack x) {
        // QFocusEvent* QFocusEvent(QEvent::Type)
        x_QFocusEvent* xret = new x_QFocusEvent((QEvent::Type)x[1].s_enum,(Qt::FocusReason)Qt::OtherFocusReason);
        x[0].s_class = (void*)xret;
    }
    ~x_QFocusEvent() { this->_binding->deleted(109, (void*)this); }
};
void xcall_QFocusEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFocusEvent *xself = (x_QFocusEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFocusEvent::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: x_QFocusEvent::x_6(args);	break;
        case 7: x_QFocusEvent::x_7(args);	break;
        case 8: delete (QFocusEvent*)xself;	break;
    }
}
class x_QFocusFrame : public QFocusFrame, 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<QFocusFrame*>(this))) {
            const QMetaObject* xret = ((const x_QFocusFrame*)this)->QFocusFrame::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFocusFrame*)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<QFocusFrame*>(this))) {
            void* xret = this->QFocusFrame::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 = QFocusFrame::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 = QFocusFrame::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 = QFocusFrame::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 = QFocusFrame::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<QFocusFrame*>(this))) {
            int xret = this->QFocusFrame::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) {
        // QFocusFrame* QFocusFrame(QWidget*)
        x_QFocusFrame* xret = new x_QFocusFrame((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFocusFrame(QWidget* x1) : QFocusFrame(x1) {}
    void x_9(Smoke::Stack x) {
        // void setWidget(QWidget*)
        this->QFocusFrame::setWidget((QWidget*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // QWidget* widget() const
        QWidget* xret = ((const x_QFocusFrame*)this)->QFocusFrame::widget();
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFocusFrame*>(this))) {
            bool xret = this->QFocusFrame::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_12(Smoke::Stack x) {
        // bool eventFilter(QObject*, QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFocusFrame*>(this))) {
            bool xret = this->QFocusFrame::eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_13(Smoke::Stack x) {
        // void paintEvent(QPaintEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFocusFrame*>(this))) {
            this->QFocusFrame::paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_14(Smoke::Stack x) {
        // void initStyleOption(QStyleOption*) const
        ((const x_QFocusFrame*)this)->QFocusFrame::initStyleOption((QStyleOption*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_15(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFocusFrame::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_16(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFocusFrame::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // QFocusFrame* QFocusFrame()
        x_QFocusFrame* xret = new x_QFocusFrame((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFocusFrame::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3188, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFocusFrame::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3189, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFocusFrame::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(3194, (void*)this, x)) return (int)x[0].s_int;
        return this->QFocusFrame::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(15532, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15563, (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(15564, (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(15568, (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(15617, (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(15618, (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(15619, (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(15620, (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(15621, (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(15622, (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(15623, (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(15624, (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(15625, (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(15626, (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(15627, (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(3200, (void*)this, x)) return;
        this->QFocusFrame::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15629, (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(15630, (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(15631, (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(15632, (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(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(15639, (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(15640, (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(15641, (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(15642, (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(15644, (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(15645, (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(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(3198, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFocusFrame::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(3199, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFocusFrame::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_QFocusFrame() { this->_binding->deleted(110, (void*)this); }
};
void xcall_QFocusFrame(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFocusFrame *xself = (x_QFocusFrame*)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_QFocusFrame::x_3(args);	break;
        case 4: x_QFocusFrame::x_4(args);	break;
        case 5: x_QFocusFrame::x_5(args);	break;
        case 6: x_QFocusFrame::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFocusFrame::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: x_QFocusFrame::x_15(args);	break;
        case 16: x_QFocusFrame::x_16(args);	break;
        case 17: x_QFocusFrame::x_17(args);	break;
        case 18: x_QFocusFrame::x_18(args);	break;
        case 19: delete (QFocusFrame*)xself;	break;
    }
}
class x_QFont : public QFont {
    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) {
        // QFont* QFont()
        x_QFont* xret = new x_QFont();
        x[0].s_class = (void*)xret;
    }
    explicit x_QFont() : QFont() {}
    static void x_2(Smoke::Stack x) {
        // QFont* QFont(const QString&, int, int, bool)
        x_QFont* xret = new x_QFont(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(bool)x[4].s_bool);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFont(const QString& x1, int x2, int x3, bool x4) : QFont(x1, x2, x3, x4) {}
    static void x_3(Smoke::Stack x) {
        // QFont* QFont(const QFont&, QPaintDevice*)
        x_QFont* xret = new x_QFont(*(const QFont*)x[1].s_class,(QPaintDevice*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFont(const QFont& x1, QPaintDevice* x2) : QFont(x1, x2) {}
    static void x_4(Smoke::Stack x) {
        // QFont* QFont(const QFont&)
        x_QFont* xret = new x_QFont(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFont(const QFont& x1) : QFont(x1) {}
    void x_5(Smoke::Stack x) {
        // QString family() const
        QString xret = ((const x_QFont*)this)->QFont::family();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // void setFamily(const QString&)
        this->QFont::setFamily(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // QString styleName() const
        QString xret = ((const x_QFont*)this)->QFont::styleName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_8(Smoke::Stack x) {
        // void setStyleName(const QString&)
        this->QFont::setStyleName(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // int pointSize() const
        int xret = ((const x_QFont*)this)->QFont::pointSize();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // void setPointSize(int)
        this->QFont::setPointSize((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // double pointSizeF() const
        double xret = ((const x_QFont*)this)->QFont::pointSizeF();
        x[0].s_double = xret;
    }
    void x_12(Smoke::Stack x) {
        // void setPointSizeF(double)
        this->QFont::setPointSizeF((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // int pixelSize() const
        int xret = ((const x_QFont*)this)->QFont::pixelSize();
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // void setPixelSize(int)
        this->QFont::setPixelSize((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // int weight() const
        int xret = ((const x_QFont*)this)->QFont::weight();
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // void setWeight(int)
        this->QFont::setWeight((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // bool bold() const
        bool xret = ((const x_QFont*)this)->QFont::bold();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setBold(bool)
        this->QFont::setBold((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void setStyle(QFont::Style)
        this->QFont::setStyle((QFont::Style)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // QFont::Style style() const
        QFont::Style xret = ((const x_QFont*)this)->QFont::style();
        x[0].s_enum = xret;
    }
    void x_21(Smoke::Stack x) {
        // bool italic() const
        bool xret = ((const x_QFont*)this)->QFont::italic();
        x[0].s_bool = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setItalic(bool)
        this->QFont::setItalic((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // bool underline() const
        bool xret = ((const x_QFont*)this)->QFont::underline();
        x[0].s_bool = xret;
    }
    void x_24(Smoke::Stack x) {
        // void setUnderline(bool)
        this->QFont::setUnderline((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // bool overline() const
        bool xret = ((const x_QFont*)this)->QFont::overline();
        x[0].s_bool = xret;
    }
    void x_26(Smoke::Stack x) {
        // void setOverline(bool)
        this->QFont::setOverline((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_27(Smoke::Stack x) {
        // bool strikeOut() const
        bool xret = ((const x_QFont*)this)->QFont::strikeOut();
        x[0].s_bool = xret;
    }
    void x_28(Smoke::Stack x) {
        // void setStrikeOut(bool)
        this->QFont::setStrikeOut((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // bool fixedPitch() const
        bool xret = ((const x_QFont*)this)->QFont::fixedPitch();
        x[0].s_bool = xret;
    }
    void x_30(Smoke::Stack x) {
        // void setFixedPitch(bool)
        this->QFont::setFixedPitch((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // bool kerning() const
        bool xret = ((const x_QFont*)this)->QFont::kerning();
        x[0].s_bool = xret;
    }
    void x_32(Smoke::Stack x) {
        // void setKerning(bool)
        this->QFont::setKerning((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_33(Smoke::Stack x) {
        // QFont::StyleHint styleHint() const
        QFont::StyleHint xret = ((const x_QFont*)this)->QFont::styleHint();
        x[0].s_enum = xret;
    }
    void x_34(Smoke::Stack x) {
        // QFont::StyleStrategy styleStrategy() const
        QFont::StyleStrategy xret = ((const x_QFont*)this)->QFont::styleStrategy();
        x[0].s_enum = xret;
    }
    void x_35(Smoke::Stack x) {
        // void setStyleHint(QFont::StyleHint, QFont::StyleStrategy)
        this->QFont::setStyleHint((QFont::StyleHint)x[1].s_enum,(QFont::StyleStrategy)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void setStyleStrategy(QFont::StyleStrategy)
        this->QFont::setStyleStrategy((QFont::StyleStrategy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // int stretch() const
        int xret = ((const x_QFont*)this)->QFont::stretch();
        x[0].s_int = xret;
    }
    void x_38(Smoke::Stack x) {
        // void setStretch(int)
        this->QFont::setStretch((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_39(Smoke::Stack x) {
        // double letterSpacing() const
        double xret = ((const x_QFont*)this)->QFont::letterSpacing();
        x[0].s_double = xret;
    }
    void x_40(Smoke::Stack x) {
        // QFont::SpacingType letterSpacingType() const
        QFont::SpacingType xret = ((const x_QFont*)this)->QFont::letterSpacingType();
        x[0].s_enum = xret;
    }
    void x_41(Smoke::Stack x) {
        // void setLetterSpacing(QFont::SpacingType, double)
        this->QFont::setLetterSpacing((QFont::SpacingType)x[1].s_enum,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // double wordSpacing() const
        double xret = ((const x_QFont*)this)->QFont::wordSpacing();
        x[0].s_double = xret;
    }
    void x_43(Smoke::Stack x) {
        // void setWordSpacing(double)
        this->QFont::setWordSpacing((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // void setCapitalization(QFont::Capitalization)
        this->QFont::setCapitalization((QFont::Capitalization)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_45(Smoke::Stack x) {
        // QFont::Capitalization capitalization() const
        QFont::Capitalization xret = ((const x_QFont*)this)->QFont::capitalization();
        x[0].s_enum = xret;
    }
    void x_46(Smoke::Stack x) {
        // void setHintingPreference(QFont::HintingPreference)
        this->QFont::setHintingPreference((QFont::HintingPreference)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_47(Smoke::Stack x) {
        // QFont::HintingPreference hintingPreference() const
        QFont::HintingPreference xret = ((const x_QFont*)this)->QFont::hintingPreference();
        x[0].s_enum = xret;
    }
    void x_48(Smoke::Stack x) {
        // bool rawMode() const
        bool xret = ((const x_QFont*)this)->QFont::rawMode();
        x[0].s_bool = xret;
    }
    void x_49(Smoke::Stack x) {
        // void setRawMode(bool)
        this->QFont::setRawMode((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_50(Smoke::Stack x) {
        // bool exactMatch() const
        bool xret = ((const x_QFont*)this)->QFont::exactMatch();
        x[0].s_bool = xret;
    }
    void x_51(Smoke::Stack x) {
        // QFont& operator=(const QFont&)
        QFont& xret = this->QFont::operator=(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_52(Smoke::Stack x) {
        // bool operator==(const QFont&) const
        bool xret = ((const x_QFont*)this)->QFont::operator==(*(const QFont*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_53(Smoke::Stack x) {
        // bool operator!=(const QFont&) const
        bool xret = ((const x_QFont*)this)->QFont::operator!=(*(const QFont*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_54(Smoke::Stack x) {
        // bool operator<(const QFont&) const
        bool xret = ((const x_QFont*)this)->QFont::operator<(*(const QFont*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_55(Smoke::Stack x) {
        // QVariant operator QVariant() const
        QVariant xret = ((const x_QFont*)this)->QFont::operator QVariant();
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_56(Smoke::Stack x) {
        // bool isCopyOf(const QFont&) const
        bool xret = ((const x_QFont*)this)->QFont::isCopyOf(*(const QFont*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_57(Smoke::Stack x) {
        // unsigned long handle() const
        unsigned long xret = ((const x_QFont*)this)->QFont::handle();
        x[0].s_ulong = xret;
    }
    void x_58(Smoke::Stack x) {
        // FT_FaceRec_* freetypeFace() const
        FT_FaceRec_* xret = ((const x_QFont*)this)->QFont::freetypeFace();
        x[0].s_class = (void*)xret;
    }
    void x_59(Smoke::Stack x) {
        // void setRawName(const QString&)
        this->QFont::setRawName(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_60(Smoke::Stack x) {
        // QString rawName() const
        QString xret = ((const x_QFont*)this)->QFont::rawName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_61(Smoke::Stack x) {
        // QString key() const
        QString xret = ((const x_QFont*)this)->QFont::key();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_62(Smoke::Stack x) {
        // QString toString() const
        QString xret = ((const x_QFont*)this)->QFont::toString();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_63(Smoke::Stack x) {
        // bool fromString(const QString&)
        bool xret = this->QFont::fromString(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    static void x_64(Smoke::Stack x) {
        // static QString substitute(const QString&)
        QString xret = QFont::substitute(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_65(Smoke::Stack x) {
        // static QStringList substitutes(const QString&)
        QStringList xret = QFont::substitutes(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_66(Smoke::Stack x) {
        // static QStringList substitutions()
        QStringList xret = QFont::substitutions();
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_67(Smoke::Stack x) {
        // static void insertSubstitution(const QString&, const QString&)
        QFont::insertSubstitution(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_68(Smoke::Stack x) {
        // static void insertSubstitutions(const QString&, const QStringList&)
        QFont::insertSubstitutions(*(const QString*)x[1].s_class,*(const QStringList*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_69(Smoke::Stack x) {
        // static void removeSubstitution(const QString&)
        QFont::removeSubstitution(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_70(Smoke::Stack x) {
        // static void initialize()
        QFont::initialize();
        (void)x; // noop (for compiler warning)
    }
    static void x_71(Smoke::Stack x) {
        // static void cleanup()
        QFont::cleanup();
        (void)x; // noop (for compiler warning)
    }
    static void x_72(Smoke::Stack x) {
        // static void cacheStatistics()
        QFont::cacheStatistics();
        (void)x; // noop (for compiler warning)
    }
    void x_73(Smoke::Stack x) {
        // QString defaultFamily() const
        QString xret = ((const x_QFont*)this)->QFont::defaultFamily();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_74(Smoke::Stack x) {
        // QString lastResortFamily() const
        QString xret = ((const x_QFont*)this)->QFont::lastResortFamily();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_75(Smoke::Stack x) {
        // QString lastResortFont() const
        QString xret = ((const x_QFont*)this)->QFont::lastResortFont();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_76(Smoke::Stack x) {
        // QFont resolve(const QFont&) const
        QFont xret = ((const x_QFont*)this)->QFont::resolve(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_77(Smoke::Stack x) {
        // unsigned int resolve() const
        unsigned int xret = ((const x_QFont*)this)->QFont::resolve();
        x[0].s_uint = xret;
    }
    void x_78(Smoke::Stack x) {
        // void resolve(unsigned int)
        this->QFont::resolve((unsigned int)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    static void x_79(Smoke::Stack x) {
        // QFont* QFont(const QString&)
        x_QFont* xret = new x_QFont(*(const QString*)x[1].s_class,(int)-1,(int)-1,(bool)false);
        x[0].s_class = (void*)xret;
    }
    static void x_80(Smoke::Stack x) {
        // QFont* QFont(const QString&, int)
        x_QFont* xret = new x_QFont(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)-1,(bool)false);
        x[0].s_class = (void*)xret;
    }
    static void x_81(Smoke::Stack x) {
        // QFont* QFont(const QString&, int, int)
        x_QFont* xret = new x_QFont(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(bool)false);
        x[0].s_class = (void*)xret;
    }
    void x_82(Smoke::Stack x) {
        // void setStyleHint(QFont::StyleHint)
        this->QFont::setStyleHint((QFont::StyleHint)x[1].s_enum,(QFont::StyleStrategy)QFont::PreferDefault);
        (void)x; // noop (for compiler warning)
    }
    static void x_83(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFont::staticMetaObject;
    }
    static void x_84(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Helvetica;
    }
    static void x_85(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::SansSerif;
    }
    static void x_86(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Times;
    }
    static void x_87(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Serif;
    }
    static void x_88(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Courier;
    }
    static void x_89(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::TypeWriter;
    }
    static void x_90(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::OldEnglish;
    }
    static void x_91(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Decorative;
    }
    static void x_92(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::System;
    }
    static void x_93(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::AnyStyle;
    }
    static void x_94(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Cursive;
    }
    static void x_95(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Monospace;
    }
    static void x_96(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Fantasy;
    }
    static void x_97(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferDefault;
    }
    static void x_98(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferBitmap;
    }
    static void x_99(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferDevice;
    }
    static void x_100(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferOutline;
    }
    static void x_101(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::ForceOutline;
    }
    static void x_102(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferMatch;
    }
    static void x_103(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferQuality;
    }
    static void x_104(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferAntialias;
    }
    static void x_105(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::NoAntialias;
    }
    static void x_106(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::OpenGLCompatible;
    }
    static void x_107(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::ForceIntegerMetrics;
    }
    static void x_108(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::NoFontMerging;
    }
    static void x_109(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferDefaultHinting;
    }
    static void x_110(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferNoHinting;
    }
    static void x_111(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferVerticalHinting;
    }
    static void x_112(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PreferFullHinting;
    }
    static void x_113(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Light;
    }
    static void x_114(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Normal;
    }
    static void x_115(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::DemiBold;
    }
    static void x_116(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Bold;
    }
    static void x_117(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Black;
    }
    static void x_118(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleNormal;
    }
    static void x_119(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleItalic;
    }
    static void x_120(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleOblique;
    }
    static void x_121(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::UltraCondensed;
    }
    static void x_122(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::ExtraCondensed;
    }
    static void x_123(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Condensed;
    }
    static void x_124(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::SemiCondensed;
    }
    static void x_125(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Unstretched;
    }
    static void x_126(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::SemiExpanded;
    }
    static void x_127(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Expanded;
    }
    static void x_128(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::ExtraExpanded;
    }
    static void x_129(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::UltraExpanded;
    }
    static void x_130(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::MixedCase;
    }
    static void x_131(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::AllUppercase;
    }
    static void x_132(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::AllLowercase;
    }
    static void x_133(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::SmallCaps;
    }
    static void x_134(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::Capitalize;
    }
    static void x_135(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::PercentageSpacing;
    }
    static void x_136(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::AbsoluteSpacing;
    }
    static void x_137(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::FamilyResolved;
    }
    static void x_138(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::SizeResolved;
    }
    static void x_139(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleHintResolved;
    }
    static void x_140(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleStrategyResolved;
    }
    static void x_141(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::WeightResolved;
    }
    static void x_142(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleResolved;
    }
    static void x_143(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::UnderlineResolved;
    }
    static void x_144(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::OverlineResolved;
    }
    static void x_145(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StrikeOutResolved;
    }
    static void x_146(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::FixedPitchResolved;
    }
    static void x_147(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StretchResolved;
    }
    static void x_148(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::KerningResolved;
    }
    static void x_149(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::CapitalizationResolved;
    }
    static void x_150(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::LetterSpacingResolved;
    }
    static void x_151(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::WordSpacingResolved;
    }
    static void x_152(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::HintingPreferenceResolved;
    }
    static void x_153(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::StyleNameResolved;
    }
    static void x_154(Smoke::Stack x) {
        x[0].s_enum = (long)QFont::AllPropertiesResolved;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 275: //QFont::StyleHint
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::StyleHint;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::StyleHint*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::StyleHint*)xdata = (QFont::StyleHint)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::StyleHint*)xdata;
                    break;
            }
            break;
        case 276: //QFont::StyleStrategy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::StyleStrategy;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::StyleStrategy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::StyleStrategy*)xdata = (QFont::StyleStrategy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::StyleStrategy*)xdata;
                    break;
            }
            break;
        case 270: //QFont::HintingPreference
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::HintingPreference;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::HintingPreference*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::HintingPreference*)xdata = (QFont::HintingPreference)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::HintingPreference*)xdata;
                    break;
            }
            break;
        case 277: //QFont::Weight
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::Weight;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::Weight*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::Weight*)xdata = (QFont::Weight)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::Weight*)xdata;
                    break;
            }
            break;
        case 274: //QFont::Style
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::Style;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::Style*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::Style*)xdata = (QFont::Style)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::Style*)xdata;
                    break;
            }
            break;
        case 273: //QFont::Stretch
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::Stretch;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::Stretch*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::Stretch*)xdata = (QFont::Stretch)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::Stretch*)xdata;
                    break;
            }
            break;
        case 269: //QFont::Capitalization
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::Capitalization;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::Capitalization*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::Capitalization*)xdata = (QFont::Capitalization)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::Capitalization*)xdata;
                    break;
            }
            break;
        case 272: //QFont::SpacingType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::SpacingType;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::SpacingType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::SpacingType*)xdata = (QFont::SpacingType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::SpacingType*)xdata;
                    break;
            }
            break;
        case 271: //QFont::ResolveProperties
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFont::ResolveProperties;
                    break;
                case Smoke::EnumDelete:
                    delete (QFont::ResolveProperties*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFont::ResolveProperties*)xdata = (QFont::ResolveProperties)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFont::ResolveProperties*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFont() { this->_binding->deleted(111, (void*)this); }
};
void xenum_QFont(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFont::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFont(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFont *xself = (x_QFont*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFont::x_1(args);	break;
        case 2: x_QFont::x_2(args);	break;
        case 3: x_QFont::x_3(args);	break;
        case 4: x_QFont::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: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: xself->x_51(args);	break;
        case 52: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: xself->x_57(args);	break;
        case 58: xself->x_58(args);	break;
        case 59: xself->x_59(args);	break;
        case 60: xself->x_60(args);	break;
        case 61: xself->x_61(args);	break;
        case 62: xself->x_62(args);	break;
        case 63: xself->x_63(args);	break;
        case 64: x_QFont::x_64(args);	break;
        case 65: x_QFont::x_65(args);	break;
        case 66: x_QFont::x_66(args);	break;
        case 67: x_QFont::x_67(args);	break;
        case 68: x_QFont::x_68(args);	break;
        case 69: x_QFont::x_69(args);	break;
        case 70: x_QFont::x_70(args);	break;
        case 71: x_QFont::x_71(args);	break;
        case 72: x_QFont::x_72(args);	break;
        case 73: xself->x_73(args);	break;
        case 74: xself->x_74(args);	break;
        case 75: xself->x_75(args);	break;
        case 76: xself->x_76(args);	break;
        case 77: xself->x_77(args);	break;
        case 78: xself->x_78(args);	break;
        case 79: x_QFont::x_79(args);	break;
        case 80: x_QFont::x_80(args);	break;
        case 81: x_QFont::x_81(args);	break;
        case 82: xself->x_82(args);	break;
        case 83: x_QFont::x_83(args);	break;
        case 84: x_QFont::x_84(args);	break;
        case 85: x_QFont::x_85(args);	break;
        case 86: x_QFont::x_86(args);	break;
        case 87: x_QFont::x_87(args);	break;
        case 88: x_QFont::x_88(args);	break;
        case 89: x_QFont::x_89(args);	break;
        case 90: x_QFont::x_90(args);	break;
        case 91: x_QFont::x_91(args);	break;
        case 92: x_QFont::x_92(args);	break;
        case 93: x_QFont::x_93(args);	break;
        case 94: x_QFont::x_94(args);	break;
        case 95: x_QFont::x_95(args);	break;
        case 96: x_QFont::x_96(args);	break;
        case 97: x_QFont::x_97(args);	break;
        case 98: x_QFont::x_98(args);	break;
        case 99: x_QFont::x_99(args);	break;
        case 100: x_QFont::x_100(args);	break;
        case 101: x_QFont::x_101(args);	break;
        case 102: x_QFont::x_102(args);	break;
        case 103: x_QFont::x_103(args);	break;
        case 104: x_QFont::x_104(args);	break;
        case 105: x_QFont::x_105(args);	break;
        case 106: x_QFont::x_106(args);	break;
        case 107: x_QFont::x_107(args);	break;
        case 108: x_QFont::x_108(args);	break;
        case 109: x_QFont::x_109(args);	break;
        case 110: x_QFont::x_110(args);	break;
        case 111: x_QFont::x_111(args);	break;
        case 112: x_QFont::x_112(args);	break;
        case 113: x_QFont::x_113(args);	break;
        case 114: x_QFont::x_114(args);	break;
        case 115: x_QFont::x_115(args);	break;
        case 116: x_QFont::x_116(args);	break;
        case 117: x_QFont::x_117(args);	break;
        case 118: x_QFont::x_118(args);	break;
        case 119: x_QFont::x_119(args);	break;
        case 120: x_QFont::x_120(args);	break;
        case 121: x_QFont::x_121(args);	break;
        case 122: x_QFont::x_122(args);	break;
        case 123: x_QFont::x_123(args);	break;
        case 124: x_QFont::x_124(args);	break;
        case 125: x_QFont::x_125(args);	break;
        case 126: x_QFont::x_126(args);	break;
        case 127: x_QFont::x_127(args);	break;
        case 128: x_QFont::x_128(args);	break;
        case 129: x_QFont::x_129(args);	break;
        case 130: x_QFont::x_130(args);	break;
        case 131: x_QFont::x_131(args);	break;
        case 132: x_QFont::x_132(args);	break;
        case 133: x_QFont::x_133(args);	break;
        case 134: x_QFont::x_134(args);	break;
        case 135: x_QFont::x_135(args);	break;
        case 136: x_QFont::x_136(args);	break;
        case 137: x_QFont::x_137(args);	break;
        case 138: x_QFont::x_138(args);	break;
        case 139: x_QFont::x_139(args);	break;
        case 140: x_QFont::x_140(args);	break;
        case 141: x_QFont::x_141(args);	break;
        case 142: x_QFont::x_142(args);	break;
        case 143: x_QFont::x_143(args);	break;
        case 144: x_QFont::x_144(args);	break;
        case 145: x_QFont::x_145(args);	break;
        case 146: x_QFont::x_146(args);	break;
        case 147: x_QFont::x_147(args);	break;
        case 148: x_QFont::x_148(args);	break;
        case 149: x_QFont::x_149(args);	break;
        case 150: x_QFont::x_150(args);	break;
        case 151: x_QFont::x_151(args);	break;
        case 152: x_QFont::x_152(args);	break;
        case 153: x_QFont::x_153(args);	break;
        case 154: x_QFont::x_154(args);	break;
        case 155: delete (QFont*)xself;	break;
    }
}
class x_QFontComboBox : public QFontComboBox, 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<QFontComboBox*>(this))) {
            const QMetaObject* xret = ((const x_QFontComboBox*)this)->QFontComboBox::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFontComboBox*)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<QFontComboBox*>(this))) {
            void* xret = this->QFontComboBox::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 = QFontComboBox::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 = QFontComboBox::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 = QFontComboBox::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 = QFontComboBox::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<QFontComboBox*>(this))) {
            int xret = this->QFontComboBox::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) {
        // QFontComboBox* QFontComboBox(QWidget*)
        x_QFontComboBox* xret = new x_QFontComboBox((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontComboBox(QWidget* x1) : QFontComboBox(x1) {}
    void x_9(Smoke::Stack x) {
        // void setWritingSystem(QFontDatabase::WritingSystem)
        this->QFontComboBox::setWritingSystem((QFontDatabase::WritingSystem)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // QFontDatabase::WritingSystem writingSystem() const
        QFontDatabase::WritingSystem xret = ((const x_QFontComboBox*)this)->QFontComboBox::writingSystem();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // void setFontFilters(QFlags<QFontComboBox::FontFilter>)
        this->QFontComboBox::setFontFilters((QFlags<QFontComboBox::FontFilter>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QFlags<QFontComboBox::FontFilter> fontFilters() const
        QFlags<QFontComboBox::FontFilter> xret = ((const x_QFontComboBox*)this)->QFontComboBox::fontFilters();
        x[0].s_uint = (uint)xret;
    }
    void x_13(Smoke::Stack x) {
        // QFont currentFont() const
        QFont xret = ((const x_QFontComboBox*)this)->QFontComboBox::currentFont();
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_14(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFontComboBox*>(this))) {
            QSize xret = ((const x_QFontComboBox*)this)->QFontComboBox::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QFontComboBox*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_15(Smoke::Stack x) {
        // void setCurrentFont(const QFont&)
        this->QFontComboBox::setCurrentFont(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void currentFontChanged(const QFont&)
        this->QFontComboBox::currentFontChanged(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFontComboBox*>(this))) {
            bool xret = this->QFontComboBox::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_18(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFontComboBox::tr((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 QString trUtf8(const char*)
        QString xret = QFontComboBox::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_20(Smoke::Stack x) {
        // QFontComboBox* QFontComboBox()
        x_QFontComboBox* xret = new x_QFontComboBox((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_21(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFontComboBox::staticMetaObject;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QFontComboBox::AllFonts;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QFontComboBox::ScalableFonts;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)QFontComboBox::NonScalableFonts;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)QFontComboBox::MonospacedFonts;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)QFontComboBox::ProportionalFonts;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3362, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFontComboBox::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3363, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFontComboBox::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(3368, (void*)this, x)) return (int)x[0].s_int;
        return this->QFontComboBox::qt_metacall(x1, x2, x3);
    }
    virtual void showPopup() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2080, (void*)this, x)) return;
        this->QComboBox::showPopup();
    }
    virtual void hidePopup() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2081, (void*)this, x)) return;
        this->QComboBox::hidePopup();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(15532, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3375, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFontComboBox::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2079, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QComboBox::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(15568, (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(2101, (void*)this, x)) return;
        this->QComboBox::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2102, (void*)this, x)) return;
        this->QComboBox::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15619, (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(15620, (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(2105, (void*)this, x)) return;
        this->QComboBox::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2103, (void*)this, x)) return;
        this->QComboBox::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2104, (void*)this, x)) return;
        this->QComboBox::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2094, (void*)this, x)) return;
        this->QComboBox::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2095, (void*)this, x)) return;
        this->QComboBox::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15626, (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(15627, (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(2098, (void*)this, x)) return;
        this->QComboBox::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15629, (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(2097, (void*)this, x)) return;
        this->QComboBox::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15631, (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(2106, (void*)this, x)) return;
        this->QComboBox::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(2099, (void*)this, x)) return;
        this->QComboBox::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2100, (void*)this, x)) return;
        this->QComboBox::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15641, (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(2096, (void*)this, x)) return;
        this->QComboBox::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2107, (void*)this, x)) return;
        this->QComboBox::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(2108, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QComboBox::inputMethodQuery(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(3378, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFontComboBox::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(8375, (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(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (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 279: //QFontComboBox::FontFilter
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFontComboBox::FontFilter;
                    break;
                case Smoke::EnumDelete:
                    delete (QFontComboBox::FontFilter*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFontComboBox::FontFilter*)xdata = (QFontComboBox::FontFilter)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFontComboBox::FontFilter*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFontComboBox() { this->_binding->deleted(112, (void*)this); }
};
void xenum_QFontComboBox(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFontComboBox::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFontComboBox(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontComboBox *xself = (x_QFontComboBox*)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_QFontComboBox::x_3(args);	break;
        case 4: x_QFontComboBox::x_4(args);	break;
        case 5: x_QFontComboBox::x_5(args);	break;
        case 6: x_QFontComboBox::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFontComboBox::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: x_QFontComboBox::x_18(args);	break;
        case 19: x_QFontComboBox::x_19(args);	break;
        case 20: x_QFontComboBox::x_20(args);	break;
        case 21: x_QFontComboBox::x_21(args);	break;
        case 22: x_QFontComboBox::x_22(args);	break;
        case 23: x_QFontComboBox::x_23(args);	break;
        case 24: x_QFontComboBox::x_24(args);	break;
        case 25: x_QFontComboBox::x_25(args);	break;
        case 26: x_QFontComboBox::x_26(args);	break;
        case 27: delete (QFontComboBox*)xself;	break;
    }
}
class x_QFontDatabase : public QFontDatabase {
    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) {
        // static QList<int> standardSizes()
        QList<int> xret = QFontDatabase::standardSizes();
        x[0].s_class = (void*)new QList<int>(xret);
    }
    static void x_2(Smoke::Stack x) {
        // QFontDatabase* QFontDatabase()
        x_QFontDatabase* xret = new x_QFontDatabase();
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontDatabase() : QFontDatabase() {}
    void x_3(Smoke::Stack x) {
        // QList<QFontDatabase::WritingSystem> writingSystems() const
        QList<QFontDatabase::WritingSystem> xret = ((const x_QFontDatabase*)this)->QFontDatabase::writingSystems();
        x[0].s_class = (void*)new QList<QFontDatabase::WritingSystem>(xret);
    }
    void x_4(Smoke::Stack x) {
        // QList<QFontDatabase::WritingSystem> writingSystems(const QString&) const
        QList<QFontDatabase::WritingSystem> xret = ((const x_QFontDatabase*)this)->QFontDatabase::writingSystems(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QList<QFontDatabase::WritingSystem>(xret);
    }
    void x_5(Smoke::Stack x) {
        // QStringList families(QFontDatabase::WritingSystem) const
        QStringList xret = ((const x_QFontDatabase*)this)->QFontDatabase::families((QFontDatabase::WritingSystem)x[1].s_enum);
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_6(Smoke::Stack x) {
        // QStringList styles(const QString&) const
        QStringList xret = ((const x_QFontDatabase*)this)->QFontDatabase::styles(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_7(Smoke::Stack x) {
        // QList<int> pointSizes(const QString&, const QString&)
        QList<int> xret = this->QFontDatabase::pointSizes(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QList<int>(xret);
    }
    void x_8(Smoke::Stack x) {
        // QList<int> smoothSizes(const QString&, const QString&)
        QList<int> xret = this->QFontDatabase::smoothSizes(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QList<int>(xret);
    }
    void x_9(Smoke::Stack x) {
        // QString styleString(const QFont&)
        QString xret = this->QFontDatabase::styleString(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_10(Smoke::Stack x) {
        // QString styleString(const QFontInfo&)
        QString xret = this->QFontDatabase::styleString(*(const QFontInfo*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // QFont font(const QString&, const QString&, int) const
        QFont xret = ((const x_QFontDatabase*)this)->QFontDatabase::font(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_12(Smoke::Stack x) {
        // bool isBitmapScalable(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isBitmapScalable(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // bool isSmoothlyScalable(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isSmoothlyScalable(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // bool isScalable(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isScalable(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // bool isFixedPitch(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isFixedPitch(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool italic(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::italic(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // bool bold(const QString&, const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::bold(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // int weight(const QString&, const QString&) const
        int xret = ((const x_QFontDatabase*)this)->QFontDatabase::weight(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // bool hasFamily(const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::hasFamily(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    static void x_20(Smoke::Stack x) {
        // static QString writingSystemName(QFontDatabase::WritingSystem)
        QString xret = QFontDatabase::writingSystemName((QFontDatabase::WritingSystem)x[1].s_enum);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_21(Smoke::Stack x) {
        // static QString writingSystemSample(QFontDatabase::WritingSystem)
        QString xret = QFontDatabase::writingSystemSample((QFontDatabase::WritingSystem)x[1].s_enum);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // static int addApplicationFont(const QString&)
        int xret = QFontDatabase::addApplicationFont(*(const QString*)x[1].s_class);
        x[0].s_int = xret;
    }
    static void x_23(Smoke::Stack x) {
        // static int addApplicationFontFromData(const QByteArray&)
        int xret = QFontDatabase::addApplicationFontFromData(*(const QByteArray*)x[1].s_class);
        x[0].s_int = xret;
    }
    static void x_24(Smoke::Stack x) {
        // static QStringList applicationFontFamilies(int)
        QStringList xret = QFontDatabase::applicationFontFamilies((int)x[1].s_int);
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_25(Smoke::Stack x) {
        // static bool removeApplicationFont(int)
        bool xret = QFontDatabase::removeApplicationFont((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    static void x_26(Smoke::Stack x) {
        // static bool removeAllApplicationFonts()
        bool xret = QFontDatabase::removeAllApplicationFonts();
        x[0].s_bool = xret;
    }
    static void x_27(Smoke::Stack x) {
        // static bool supportsThreadedFontRendering()
        bool xret = QFontDatabase::supportsThreadedFontRendering();
        x[0].s_bool = xret;
    }
    static void x_28(Smoke::Stack x) {
        // QFontDatabase* QFontDatabase(const QFontDatabase&)
        x_QFontDatabase* xret = new x_QFontDatabase(*(const QFontDatabase*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontDatabase(const QFontDatabase& x1) : QFontDatabase(x1) {}
    void x_29(Smoke::Stack x) {
        // QStringList families() const
        QStringList xret = ((const x_QFontDatabase*)this)->QFontDatabase::families((QFontDatabase::WritingSystem)QFontDatabase::Any);
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_30(Smoke::Stack x) {
        // QList<int> pointSizes(const QString&)
        QList<int> xret = this->QFontDatabase::pointSizes(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_class = (void*)new QList<int>(xret);
    }
    void x_31(Smoke::Stack x) {
        // bool isBitmapScalable(const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isBitmapScalable(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    void x_32(Smoke::Stack x) {
        // bool isSmoothlyScalable(const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isSmoothlyScalable(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    void x_33(Smoke::Stack x) {
        // bool isScalable(const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isScalable(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    void x_34(Smoke::Stack x) {
        // bool isFixedPitch(const QString&) const
        bool xret = ((const x_QFontDatabase*)this)->QFontDatabase::isFixedPitch(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    static void x_35(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFontDatabase::staticMetaObject;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Any;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Latin;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Greek;
    }
    static void x_39(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Cyrillic;
    }
    static void x_40(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Armenian;
    }
    static void x_41(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Hebrew;
    }
    static void x_42(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Arabic;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Syriac;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Thaana;
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Devanagari;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Bengali;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Gurmukhi;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Gujarati;
    }
    static void x_49(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Oriya;
    }
    static void x_50(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Tamil;
    }
    static void x_51(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Telugu;
    }
    static void x_52(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Kannada;
    }
    static void x_53(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Malayalam;
    }
    static void x_54(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Sinhala;
    }
    static void x_55(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Thai;
    }
    static void x_56(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Lao;
    }
    static void x_57(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Tibetan;
    }
    static void x_58(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Myanmar;
    }
    static void x_59(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Georgian;
    }
    static void x_60(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Khmer;
    }
    static void x_61(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::SimplifiedChinese;
    }
    static void x_62(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::TraditionalChinese;
    }
    static void x_63(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Japanese;
    }
    static void x_64(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Korean;
    }
    static void x_65(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Vietnamese;
    }
    static void x_66(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Symbol;
    }
    static void x_67(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Other;
    }
    static void x_68(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Ogham;
    }
    static void x_69(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Runic;
    }
    static void x_70(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::Nko;
    }
    static void x_71(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDatabase::WritingSystemsCount;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 281: //QFontDatabase::WritingSystem
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFontDatabase::WritingSystem;
                    break;
                case Smoke::EnumDelete:
                    delete (QFontDatabase::WritingSystem*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFontDatabase::WritingSystem*)xdata = (QFontDatabase::WritingSystem)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFontDatabase::WritingSystem*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFontDatabase() { this->_binding->deleted(113, (void*)this); }
};
void xenum_QFontDatabase(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFontDatabase::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFontDatabase(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontDatabase *xself = (x_QFontDatabase*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFontDatabase::x_1(args);	break;
        case 2: x_QFontDatabase::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: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_QFontDatabase::x_20(args);	break;
        case 21: x_QFontDatabase::x_21(args);	break;
        case 22: x_QFontDatabase::x_22(args);	break;
        case 23: x_QFontDatabase::x_23(args);	break;
        case 24: x_QFontDatabase::x_24(args);	break;
        case 25: x_QFontDatabase::x_25(args);	break;
        case 26: x_QFontDatabase::x_26(args);	break;
        case 27: x_QFontDatabase::x_27(args);	break;
        case 28: x_QFontDatabase::x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: x_QFontDatabase::x_35(args);	break;
        case 36: x_QFontDatabase::x_36(args);	break;
        case 37: x_QFontDatabase::x_37(args);	break;
        case 38: x_QFontDatabase::x_38(args);	break;
        case 39: x_QFontDatabase::x_39(args);	break;
        case 40: x_QFontDatabase::x_40(args);	break;
        case 41: x_QFontDatabase::x_41(args);	break;
        case 42: x_QFontDatabase::x_42(args);	break;
        case 43: x_QFontDatabase::x_43(args);	break;
        case 44: x_QFontDatabase::x_44(args);	break;
        case 45: x_QFontDatabase::x_45(args);	break;
        case 46: x_QFontDatabase::x_46(args);	break;
        case 47: x_QFontDatabase::x_47(args);	break;
        case 48: x_QFontDatabase::x_48(args);	break;
        case 49: x_QFontDatabase::x_49(args);	break;
        case 50: x_QFontDatabase::x_50(args);	break;
        case 51: x_QFontDatabase::x_51(args);	break;
        case 52: x_QFontDatabase::x_52(args);	break;
        case 53: x_QFontDatabase::x_53(args);	break;
        case 54: x_QFontDatabase::x_54(args);	break;
        case 55: x_QFontDatabase::x_55(args);	break;
        case 56: x_QFontDatabase::x_56(args);	break;
        case 57: x_QFontDatabase::x_57(args);	break;
        case 58: x_QFontDatabase::x_58(args);	break;
        case 59: x_QFontDatabase::x_59(args);	break;
        case 60: x_QFontDatabase::x_60(args);	break;
        case 61: x_QFontDatabase::x_61(args);	break;
        case 62: x_QFontDatabase::x_62(args);	break;
        case 63: x_QFontDatabase::x_63(args);	break;
        case 64: x_QFontDatabase::x_64(args);	break;
        case 65: x_QFontDatabase::x_65(args);	break;
        case 66: x_QFontDatabase::x_66(args);	break;
        case 67: x_QFontDatabase::x_67(args);	break;
        case 68: x_QFontDatabase::x_68(args);	break;
        case 69: x_QFontDatabase::x_69(args);	break;
        case 70: x_QFontDatabase::x_70(args);	break;
        case 71: x_QFontDatabase::x_71(args);	break;
        case 72: delete (QFontDatabase*)xself;	break;
    }
}
class x_QFontDialog : public QFontDialog, 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<QFontDialog*>(this))) {
            const QMetaObject* xret = ((const x_QFontDialog*)this)->QFontDialog::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFontDialog*)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<QFontDialog*>(this))) {
            void* xret = this->QFontDialog::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 = QFontDialog::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 = QFontDialog::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 = QFontDialog::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 = QFontDialog::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<QFontDialog*>(this))) {
            int xret = this->QFontDialog::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) {
        // QFontDialog* QFontDialog(QWidget*)
        x_QFontDialog* xret = new x_QFontDialog((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontDialog(QWidget* x1) : QFontDialog(x1) {}
    static void x_9(Smoke::Stack x) {
        // QFontDialog* QFontDialog(const QFont&, QWidget*)
        x_QFontDialog* xret = new x_QFontDialog(*(const QFont*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontDialog(const QFont& x1, QWidget* x2) : QFontDialog(x1, x2) {}
    void x_10(Smoke::Stack x) {
        // void setCurrentFont(const QFont&)
        this->QFontDialog::setCurrentFont(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // QFont currentFont() const
        QFont xret = ((const x_QFontDialog*)this)->QFontDialog::currentFont();
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_12(Smoke::Stack x) {
        // QFont selectedFont() const
        QFont xret = ((const x_QFontDialog*)this)->QFontDialog::selectedFont();
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setOption(QFontDialog::FontDialogOption, bool)
        this->QFontDialog::setOption((QFontDialog::FontDialogOption)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool testOption(QFontDialog::FontDialogOption) const
        bool xret = ((const x_QFontDialog*)this)->QFontDialog::testOption((QFontDialog::FontDialogOption)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // void setOptions(QFlags<QFontDialog::FontDialogOption>)
        this->QFontDialog::setOptions((QFlags<QFontDialog::FontDialogOption>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // QFlags<QFontDialog::FontDialogOption> options() const
        QFlags<QFontDialog::FontDialogOption> xret = ((const x_QFontDialog*)this)->QFontDialog::options();
        x[0].s_uint = (uint)xret;
    }
    void x_17(Smoke::Stack x) {
        // void open()
        this->QFontDialog::open();
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void open(QObject*, const char*)
        this->QFontDialog::open((QObject*)x[1].s_class,(const char*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void setVisible(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFontDialog*>(this))) {
            this->QFontDialog::setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_20(Smoke::Stack x) {
        // static QFont getFont(bool*, const QFont&, QWidget*, const QString&, QFlags<QFontDialog::FontDialogOption>)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,*(const QFont*)x[2].s_class,(QWidget*)x[3].s_class,*(const QString*)x[4].s_class,(QFlags<QFontDialog::FontDialogOption>)x[5].s_uint);
        x[0].s_class = (void*)new QFont(xret);
    }
    static void x_21(Smoke::Stack x) {
        // static QFont getFont(bool*, const QFont&, QWidget*, const QString&)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,*(const QFont*)x[2].s_class,(QWidget*)x[3].s_class,*(const QString*)x[4].s_class);
        x[0].s_class = (void*)new QFont(xret);
    }
    static void x_22(Smoke::Stack x) {
        // static QFont getFont(bool*, const QFont&, QWidget*)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,*(const QFont*)x[2].s_class,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)new QFont(xret);
    }
    static void x_23(Smoke::Stack x) {
        // static QFont getFont(bool*, QWidget*)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_24(Smoke::Stack x) {
        // void currentFontChanged(const QFont&)
        this->QFontDialog::currentFontChanged(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void fontSelected(const QFont&)
        this->QFontDialog::fontSelected(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFontDialog*>(this))) {
            this->QFontDialog::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_27(Smoke::Stack x) {
        // void done(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFontDialog*>(this))) {
            this->QFontDialog::done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->done((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_28(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFontDialog::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_29(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFontDialog::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_30(Smoke::Stack x) {
        // QFontDialog* QFontDialog()
        x_QFontDialog* xret = new x_QFontDialog((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_31(Smoke::Stack x) {
        // QFontDialog* QFontDialog(const QFont&)
        x_QFontDialog* xret = new x_QFontDialog(*(const QFont*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    void x_32(Smoke::Stack x) {
        // void setOption(QFontDialog::FontDialogOption)
        this->QFontDialog::setOption((QFontDialog::FontDialogOption)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    static void x_33(Smoke::Stack x) {
        // static QFont getFont(bool*, const QFont&)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,*(const QFont*)x[2].s_class,(QWidget*)0);
        x[0].s_class = (void*)new QFont(xret);
    }
    static void x_34(Smoke::Stack x) {
        // static QFont getFont(bool*)
        QFont xret = QFontDialog::getFont((bool*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)new QFont(xret);
    }
    static void x_35(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFontDialog::staticMetaObject;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDialog::NoButtons;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QFontDialog::DontUseNativeDialog;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3461, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFontDialog::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3462, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFontDialog::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(3467, (void*)this, x)) return (int)x[0].s_int;
        return this->QFontDialog::qt_metacall(x1, x2, x3);
    }
    virtual void done(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3487, (void*)this, x)) return;
        this->QFontDialog::done(x1);
    }
    virtual void accept() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2580, (void*)this, x)) return;
        this->QDialog::accept();
    }
    virtual void reject() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2581, (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(3479, (void*)this, x)) return;
        this->QFontDialog::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2568, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2569, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QDialog::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(15568, (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(15617, (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(15618, (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(15619, (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(15620, (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(15621, (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(2583, (void*)this, x)) return;
        this->QDialog::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15623, (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(15624, (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(15625, (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(15626, (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(15627, (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(15628, (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(15629, (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(2586, (void*)this, x)) return;
        this->QDialog::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2584, (void*)this, x)) return;
        this->QDialog::closeEvent(x1);
    }
    virtual void contextMenuEvent(QContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(2587, (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(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(2585, (void*)this, x)) return;
        this->QDialog::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15640, (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(15641, (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(3486, (void*)this, x)) return;
        this->QFontDialog::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(15644, (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(15645, (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(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(15616, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::event(x1);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (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 283: //QFontDialog::FontDialogOption
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFontDialog::FontDialogOption;
                    break;
                case Smoke::EnumDelete:
                    delete (QFontDialog::FontDialogOption*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFontDialog::FontDialogOption*)xdata = (QFontDialog::FontDialogOption)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFontDialog::FontDialogOption*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFontDialog() { this->_binding->deleted(114, (void*)this); }
};
void xenum_QFontDialog(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFontDialog::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFontDialog(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontDialog *xself = (x_QFontDialog*)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_QFontDialog::x_3(args);	break;
        case 4: x_QFontDialog::x_4(args);	break;
        case 5: x_QFontDialog::x_5(args);	break;
        case 6: x_QFontDialog::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFontDialog::x_8(args);	break;
        case 9: x_QFontDialog::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_QFontDialog::x_20(args);	break;
        case 21: x_QFontDialog::x_21(args);	break;
        case 22: x_QFontDialog::x_22(args);	break;
        case 23: x_QFontDialog::x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: x_QFontDialog::x_28(args);	break;
        case 29: x_QFontDialog::x_29(args);	break;
        case 30: x_QFontDialog::x_30(args);	break;
        case 31: x_QFontDialog::x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: x_QFontDialog::x_33(args);	break;
        case 34: x_QFontDialog::x_34(args);	break;
        case 35: x_QFontDialog::x_35(args);	break;
        case 36: x_QFontDialog::x_36(args);	break;
        case 37: x_QFontDialog::x_37(args);	break;
        case 38: delete (QFontDialog*)xself;	break;
    }
}
class x_QFontInfo : public QFontInfo {
    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) {
        // QFontInfo* QFontInfo(const QFont&)
        x_QFontInfo* xret = new x_QFontInfo(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontInfo(const QFont& x1) : QFontInfo(x1) {}
    static void x_2(Smoke::Stack x) {
        // QFontInfo* QFontInfo(const QFontInfo&)
        x_QFontInfo* xret = new x_QFontInfo(*(const QFontInfo*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontInfo(const QFontInfo& x1) : QFontInfo(x1) {}
    void x_3(Smoke::Stack x) {
        // QFontInfo& operator=(const QFontInfo&)
        QFontInfo& xret = this->QFontInfo::operator=(*(const QFontInfo*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString family() const
        QString xret = ((const x_QFontInfo*)this)->QFontInfo::family();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // QString styleName() const
        QString xret = ((const x_QFontInfo*)this)->QFontInfo::styleName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // int pixelSize() const
        int xret = ((const x_QFontInfo*)this)->QFontInfo::pixelSize();
        x[0].s_int = xret;
    }
    void x_7(Smoke::Stack x) {
        // int pointSize() const
        int xret = ((const x_QFontInfo*)this)->QFontInfo::pointSize();
        x[0].s_int = xret;
    }
    void x_8(Smoke::Stack x) {
        // double pointSizeF() const
        double xret = ((const x_QFontInfo*)this)->QFontInfo::pointSizeF();
        x[0].s_double = xret;
    }
    void x_9(Smoke::Stack x) {
        // bool italic() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::italic();
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // QFont::Style style() const
        QFont::Style xret = ((const x_QFontInfo*)this)->QFontInfo::style();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // int weight() const
        int xret = ((const x_QFontInfo*)this)->QFontInfo::weight();
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // bool bold() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::bold();
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // bool underline() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::underline();
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // bool overline() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::overline();
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // bool strikeOut() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::strikeOut();
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool fixedPitch() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::fixedPitch();
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // QFont::StyleHint styleHint() const
        QFont::StyleHint xret = ((const x_QFontInfo*)this)->QFontInfo::styleHint();
        x[0].s_enum = xret;
    }
    void x_18(Smoke::Stack x) {
        // bool rawMode() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::rawMode();
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // bool exactMatch() const
        bool xret = ((const x_QFontInfo*)this)->QFontInfo::exactMatch();
        x[0].s_bool = xret;
    }
    ~x_QFontInfo() { this->_binding->deleted(115, (void*)this); }
};
void xcall_QFontInfo(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontInfo *xself = (x_QFontInfo*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFontInfo::x_1(args);	break;
        case 2: x_QFontInfo::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: 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: delete (QFontInfo*)xself;	break;
    }
}
class x_QFontMetrics : public QFontMetrics {
    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) {
        // QFontMetrics* QFontMetrics(const QFont&)
        x_QFontMetrics* xret = new x_QFontMetrics(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetrics(const QFont& x1) : QFontMetrics(x1) {}
    static void x_2(Smoke::Stack x) {
        // QFontMetrics* QFontMetrics(const QFont&, QPaintDevice*)
        x_QFontMetrics* xret = new x_QFontMetrics(*(const QFont*)x[1].s_class,(QPaintDevice*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetrics(const QFont& x1, QPaintDevice* x2) : QFontMetrics(x1, x2) {}
    static void x_3(Smoke::Stack x) {
        // QFontMetrics* QFontMetrics(const QFontMetrics&)
        x_QFontMetrics* xret = new x_QFontMetrics(*(const QFontMetrics*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetrics(const QFontMetrics& x1) : QFontMetrics(x1) {}
    void x_4(Smoke::Stack x) {
        // QFontMetrics& operator=(const QFontMetrics&)
        QFontMetrics& xret = this->QFontMetrics::operator=(*(const QFontMetrics*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // int ascent() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::ascent();
        x[0].s_int = xret;
    }
    void x_6(Smoke::Stack x) {
        // int descent() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::descent();
        x[0].s_int = xret;
    }
    void x_7(Smoke::Stack x) {
        // int height() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::height();
        x[0].s_int = xret;
    }
    void x_8(Smoke::Stack x) {
        // int leading() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::leading();
        x[0].s_int = xret;
    }
    void x_9(Smoke::Stack x) {
        // int lineSpacing() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::lineSpacing();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // int minLeftBearing() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::minLeftBearing();
        x[0].s_int = xret;
    }
    void x_11(Smoke::Stack x) {
        // int minRightBearing() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::minRightBearing();
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // int maxWidth() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::maxWidth();
        x[0].s_int = xret;
    }
    void x_13(Smoke::Stack x) {
        // int xHeight() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::xHeight();
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // int averageCharWidth() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::averageCharWidth();
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // bool inFont(QChar) const
        bool xret = ((const x_QFontMetrics*)this)->QFontMetrics::inFont(*(QChar*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool inFontUcs4(unsigned int) const
        bool xret = ((const x_QFontMetrics*)this)->QFontMetrics::inFontUcs4((unsigned int)x[1].s_uint);
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // int leftBearing(QChar) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::leftBearing(*(QChar*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_18(Smoke::Stack x) {
        // int rightBearing(QChar) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::rightBearing(*(QChar*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // int width(const QString&, int) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::width(*(const QString*)x[1].s_class,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // int width(const QString&, int, int) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::width(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // int width(QChar) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::width(*(QChar*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // int charWidth(const QString&, int) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::charWidth(*(const QString*)x[1].s_class,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_23(Smoke::Stack x) {
        // QRect boundingRect(QChar) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect(*(QChar*)x[1].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_24(Smoke::Stack x) {
        // QRect boundingRect(const QString&) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_25(Smoke::Stack x) {
        // QRect boundingRect(const QRect&, int, const QString&, int, int*) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)x[4].s_int,(int*)x[5].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_26(Smoke::Stack x) {
        // QRect boundingRect(int, int, int, int, int, const QString&, int, int*) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,*(const QString*)x[6].s_class,(int)x[7].s_int,(int*)x[8].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_27(Smoke::Stack x) {
        // QSize size(int, const QString&, int, int*) const
        QSize xret = ((const x_QFontMetrics*)this)->QFontMetrics::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)x[3].s_int,(int*)x[4].s_class);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_28(Smoke::Stack x) {
        // QRect tightBoundingRect(const QString&) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::tightBoundingRect(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_29(Smoke::Stack x) {
        // QString elidedText(const QString&, Qt::TextElideMode, int, int) const
        QString xret = ((const x_QFontMetrics*)this)->QFontMetrics::elidedText(*(const QString*)x[1].s_class,(Qt::TextElideMode)x[2].s_enum,(int)x[3].s_int,(int)x[4].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_30(Smoke::Stack x) {
        // int underlinePos() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::underlinePos();
        x[0].s_int = xret;
    }
    void x_31(Smoke::Stack x) {
        // int overlinePos() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::overlinePos();
        x[0].s_int = xret;
    }
    void x_32(Smoke::Stack x) {
        // int strikeOutPos() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::strikeOutPos();
        x[0].s_int = xret;
    }
    void x_33(Smoke::Stack x) {
        // int lineWidth() const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::lineWidth();
        x[0].s_int = xret;
    }
    void x_34(Smoke::Stack x) {
        // bool operator==(const QFontMetrics&)
        bool xret = this->QFontMetrics::operator==(*(const QFontMetrics*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_35(Smoke::Stack x) {
        // bool operator==(const QFontMetrics&) const
        bool xret = ((const x_QFontMetrics*)this)->QFontMetrics::operator==(*(const QFontMetrics*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_36(Smoke::Stack x) {
        // bool operator!=(const QFontMetrics&)
        bool xret = this->QFontMetrics::operator!=(*(const QFontMetrics*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // bool operator!=(const QFontMetrics&) const
        bool xret = ((const x_QFontMetrics*)this)->QFontMetrics::operator!=(*(const QFontMetrics*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_38(Smoke::Stack x) {
        // int width(const QString&) const
        int xret = ((const x_QFontMetrics*)this)->QFontMetrics::width(*(const QString*)x[1].s_class,(int)-1);
        x[0].s_int = xret;
    }
    void x_39(Smoke::Stack x) {
        // QRect boundingRect(const QRect&, int, const QString&) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)0,(int*)0);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_40(Smoke::Stack x) {
        // QRect boundingRect(const QRect&, int, const QString&, int) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)x[4].s_int,(int*)0);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_41(Smoke::Stack x) {
        // QRect boundingRect(int, int, int, int, int, const QString&) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,*(const QString*)x[6].s_class,(int)0,(int*)0);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_42(Smoke::Stack x) {
        // QRect boundingRect(int, int, int, int, int, const QString&, int) const
        QRect xret = ((const x_QFontMetrics*)this)->QFontMetrics::boundingRect((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,*(const QString*)x[6].s_class,(int)x[7].s_int,(int*)0);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_43(Smoke::Stack x) {
        // QSize size(int, const QString&) const
        QSize xret = ((const x_QFontMetrics*)this)->QFontMetrics::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)0,(int*)0);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_44(Smoke::Stack x) {
        // QSize size(int, const QString&, int) const
        QSize xret = ((const x_QFontMetrics*)this)->QFontMetrics::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)x[3].s_int,(int*)0);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_45(Smoke::Stack x) {
        // QString elidedText(const QString&, Qt::TextElideMode, int) const
        QString xret = ((const x_QFontMetrics*)this)->QFontMetrics::elidedText(*(const QString*)x[1].s_class,(Qt::TextElideMode)x[2].s_enum,(int)x[3].s_int,(int)0);
        x[0].s_class = (void*)new QString(xret);
    }
    ~x_QFontMetrics() { this->_binding->deleted(116, (void*)this); }
};
void xcall_QFontMetrics(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontMetrics *xself = (x_QFontMetrics*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFontMetrics::x_1(args);	break;
        case 2: x_QFontMetrics::x_2(args);	break;
        case 3: x_QFontMetrics::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: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: delete (QFontMetrics*)xself;	break;
    }
}
class x_QFontMetricsF : public QFontMetricsF {
    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) {
        // QFontMetricsF* QFontMetricsF(const QFont&)
        x_QFontMetricsF* xret = new x_QFontMetricsF(*(const QFont*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetricsF(const QFont& x1) : QFontMetricsF(x1) {}
    static void x_2(Smoke::Stack x) {
        // QFontMetricsF* QFontMetricsF(const QFont&, QPaintDevice*)
        x_QFontMetricsF* xret = new x_QFontMetricsF(*(const QFont*)x[1].s_class,(QPaintDevice*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetricsF(const QFont& x1, QPaintDevice* x2) : QFontMetricsF(x1, x2) {}
    static void x_3(Smoke::Stack x) {
        // QFontMetricsF* QFontMetricsF(const QFontMetrics&)
        x_QFontMetricsF* xret = new x_QFontMetricsF(*(const QFontMetrics*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetricsF(const QFontMetrics& x1) : QFontMetricsF(x1) {}
    static void x_4(Smoke::Stack x) {
        // QFontMetricsF* QFontMetricsF(const QFontMetricsF&)
        x_QFontMetricsF* xret = new x_QFontMetricsF(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFontMetricsF(const QFontMetricsF& x1) : QFontMetricsF(x1) {}
    void x_5(Smoke::Stack x) {
        // QFontMetricsF& operator=(const QFontMetricsF&)
        QFontMetricsF& xret = this->QFontMetricsF::operator=(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // QFontMetricsF& operator=(const QFontMetrics&)
        QFontMetricsF& xret = this->QFontMetricsF::operator=(*(const QFontMetrics*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_7(Smoke::Stack x) {
        // double ascent() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::ascent();
        x[0].s_double = xret;
    }
    void x_8(Smoke::Stack x) {
        // double descent() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::descent();
        x[0].s_double = xret;
    }
    void x_9(Smoke::Stack x) {
        // double height() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::height();
        x[0].s_double = xret;
    }
    void x_10(Smoke::Stack x) {
        // double leading() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::leading();
        x[0].s_double = xret;
    }
    void x_11(Smoke::Stack x) {
        // double lineSpacing() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::lineSpacing();
        x[0].s_double = xret;
    }
    void x_12(Smoke::Stack x) {
        // double minLeftBearing() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::minLeftBearing();
        x[0].s_double = xret;
    }
    void x_13(Smoke::Stack x) {
        // double minRightBearing() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::minRightBearing();
        x[0].s_double = xret;
    }
    void x_14(Smoke::Stack x) {
        // double maxWidth() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::maxWidth();
        x[0].s_double = xret;
    }
    void x_15(Smoke::Stack x) {
        // double xHeight() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::xHeight();
        x[0].s_double = xret;
    }
    void x_16(Smoke::Stack x) {
        // double averageCharWidth() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::averageCharWidth();
        x[0].s_double = xret;
    }
    void x_17(Smoke::Stack x) {
        // bool inFont(QChar) const
        bool xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::inFont(*(QChar*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // bool inFontUcs4(unsigned int) const
        bool xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::inFontUcs4((unsigned int)x[1].s_uint);
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // double leftBearing(QChar) const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::leftBearing(*(QChar*)x[1].s_class);
        x[0].s_double = xret;
    }
    void x_20(Smoke::Stack x) {
        // double rightBearing(QChar) const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::rightBearing(*(QChar*)x[1].s_class);
        x[0].s_double = xret;
    }
    void x_21(Smoke::Stack x) {
        // double width(const QString&) const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::width(*(const QString*)x[1].s_class);
        x[0].s_double = xret;
    }
    void x_22(Smoke::Stack x) {
        // double width(QChar) const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::width(*(QChar*)x[1].s_class);
        x[0].s_double = xret;
    }
    void x_23(Smoke::Stack x) {
        // QRectF boundingRect(const QString&) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::boundingRect(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_24(Smoke::Stack x) {
        // QRectF boundingRect(QChar) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::boundingRect(*(QChar*)x[1].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_25(Smoke::Stack x) {
        // QRectF boundingRect(const QRectF&, int, const QString&, int, int*) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::boundingRect(*(const QRectF*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)x[4].s_int,(int*)x[5].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_26(Smoke::Stack x) {
        // QSizeF size(int, const QString&, int, int*) const
        QSizeF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)x[3].s_int,(int*)x[4].s_class);
        x[0].s_class = (void*)new QSizeF(xret);
    }
    void x_27(Smoke::Stack x) {
        // QRectF tightBoundingRect(const QString&) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::tightBoundingRect(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_28(Smoke::Stack x) {
        // QString elidedText(const QString&, Qt::TextElideMode, double, int) const
        QString xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::elidedText(*(const QString*)x[1].s_class,(Qt::TextElideMode)x[2].s_enum,(double)x[3].s_double,(int)x[4].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_29(Smoke::Stack x) {
        // double underlinePos() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::underlinePos();
        x[0].s_double = xret;
    }
    void x_30(Smoke::Stack x) {
        // double overlinePos() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::overlinePos();
        x[0].s_double = xret;
    }
    void x_31(Smoke::Stack x) {
        // double strikeOutPos() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::strikeOutPos();
        x[0].s_double = xret;
    }
    void x_32(Smoke::Stack x) {
        // double lineWidth() const
        double xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::lineWidth();
        x[0].s_double = xret;
    }
    void x_33(Smoke::Stack x) {
        // bool operator==(const QFontMetricsF&)
        bool xret = this->QFontMetricsF::operator==(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_34(Smoke::Stack x) {
        // bool operator==(const QFontMetricsF&) const
        bool xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::operator==(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_35(Smoke::Stack x) {
        // bool operator!=(const QFontMetricsF&)
        bool xret = this->QFontMetricsF::operator!=(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_36(Smoke::Stack x) {
        // bool operator!=(const QFontMetricsF&) const
        bool xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::operator!=(*(const QFontMetricsF*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // QRectF boundingRect(const QRectF&, int, const QString&) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::boundingRect(*(const QRectF*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)0,(int*)0);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_38(Smoke::Stack x) {
        // QRectF boundingRect(const QRectF&, int, const QString&, int) const
        QRectF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::boundingRect(*(const QRectF*)x[1].s_class,(int)x[2].s_int,*(const QString*)x[3].s_class,(int)x[4].s_int,(int*)0);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_39(Smoke::Stack x) {
        // QSizeF size(int, const QString&) const
        QSizeF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)0,(int*)0);
        x[0].s_class = (void*)new QSizeF(xret);
    }
    void x_40(Smoke::Stack x) {
        // QSizeF size(int, const QString&, int) const
        QSizeF xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::size((int)x[1].s_int,*(const QString*)x[2].s_class,(int)x[3].s_int,(int*)0);
        x[0].s_class = (void*)new QSizeF(xret);
    }
    void x_41(Smoke::Stack x) {
        // QString elidedText(const QString&, Qt::TextElideMode, double) const
        QString xret = ((const x_QFontMetricsF*)this)->QFontMetricsF::elidedText(*(const QString*)x[1].s_class,(Qt::TextElideMode)x[2].s_enum,(double)x[3].s_double,(int)0);
        x[0].s_class = (void*)new QString(xret);
    }
    ~x_QFontMetricsF() { this->_binding->deleted(117, (void*)this); }
};
void xcall_QFontMetricsF(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFontMetricsF *xself = (x_QFontMetricsF*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QFontMetricsF::x_1(args);	break;
        case 2: x_QFontMetricsF::x_2(args);	break;
        case 3: x_QFontMetricsF::x_3(args);	break;
        case 4: x_QFontMetricsF::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: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: delete (QFontMetricsF*)xself;	break;
    }
}
class x_QFormLayout : public QFormLayout, 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<QFormLayout*>(this))) {
            const QMetaObject* xret = ((const x_QFormLayout*)this)->QFormLayout::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFormLayout*)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<QFormLayout*>(this))) {
            void* xret = this->QFormLayout::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 = QFormLayout::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 = QFormLayout::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 = QFormLayout::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 = QFormLayout::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<QFormLayout*>(this))) {
            int xret = this->QFormLayout::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) {
        // QFormLayout* QFormLayout(QWidget*)
        x_QFormLayout* xret = new x_QFormLayout((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFormLayout(QWidget* x1) : QFormLayout(x1) {}
    void x_9(Smoke::Stack x) {
        // void setFieldGrowthPolicy(QFormLayout::FieldGrowthPolicy)
        this->QFormLayout::setFieldGrowthPolicy((QFormLayout::FieldGrowthPolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // QFormLayout::FieldGrowthPolicy fieldGrowthPolicy() const
        QFormLayout::FieldGrowthPolicy xret = ((const x_QFormLayout*)this)->QFormLayout::fieldGrowthPolicy();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // void setRowWrapPolicy(QFormLayout::RowWrapPolicy)
        this->QFormLayout::setRowWrapPolicy((QFormLayout::RowWrapPolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QFormLayout::RowWrapPolicy rowWrapPolicy() const
        QFormLayout::RowWrapPolicy xret = ((const x_QFormLayout*)this)->QFormLayout::rowWrapPolicy();
        x[0].s_enum = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setLabelAlignment(QFlags<Qt::AlignmentFlag>)
        this->QFormLayout::setLabelAlignment((QFlags<Qt::AlignmentFlag>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> labelAlignment() const
        QFlags<Qt::AlignmentFlag> xret = ((const x_QFormLayout*)this)->QFormLayout::labelAlignment();
        x[0].s_uint = (uint)xret;
    }
    void x_15(Smoke::Stack x) {
        // void setFormAlignment(QFlags<Qt::AlignmentFlag>)
        this->QFormLayout::setFormAlignment((QFlags<Qt::AlignmentFlag>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> formAlignment() const
        QFlags<Qt::AlignmentFlag> xret = ((const x_QFormLayout*)this)->QFormLayout::formAlignment();
        x[0].s_uint = (uint)xret;
    }
    void x_17(Smoke::Stack x) {
        // void setHorizontalSpacing(int)
        this->QFormLayout::setHorizontalSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // int horizontalSpacing() const
        int xret = ((const x_QFormLayout*)this)->QFormLayout::horizontalSpacing();
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // void setVerticalSpacing(int)
        this->QFormLayout::setVerticalSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // int verticalSpacing() const
        int xret = ((const x_QFormLayout*)this)->QFormLayout::verticalSpacing();
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // int spacing() const
        int xret = ((const x_QFormLayout*)this)->QFormLayout::spacing();
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setSpacing(int)
        this->QFormLayout::setSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void addRow(QWidget*, QWidget*)
        this->QFormLayout::addRow((QWidget*)x[1].s_class,(QWidget*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void addRow(QWidget*, QLayout*)
        this->QFormLayout::addRow((QWidget*)x[1].s_class,(QLayout*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void addRow(const QString&, QWidget*)
        this->QFormLayout::addRow(*(const QString*)x[1].s_class,(QWidget*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // void addRow(const QString&, QLayout*)
        this->QFormLayout::addRow(*(const QString*)x[1].s_class,(QLayout*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_27(Smoke::Stack x) {
        // void addRow(QWidget*)
        this->QFormLayout::addRow((QWidget*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // void addRow(QLayout*)
        this->QFormLayout::addRow((QLayout*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void insertRow(int, QWidget*, QWidget*)
        this->QFormLayout::insertRow((int)x[1].s_int,(QWidget*)x[2].s_class,(QWidget*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // void insertRow(int, QWidget*, QLayout*)
        this->QFormLayout::insertRow((int)x[1].s_int,(QWidget*)x[2].s_class,(QLayout*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // void insertRow(int, const QString&, QWidget*)
        this->QFormLayout::insertRow((int)x[1].s_int,*(const QString*)x[2].s_class,(QWidget*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // void insertRow(int, const QString&, QLayout*)
        this->QFormLayout::insertRow((int)x[1].s_int,*(const QString*)x[2].s_class,(QLayout*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_33(Smoke::Stack x) {
        // void insertRow(int, QWidget*)
        this->QFormLayout::insertRow((int)x[1].s_int,(QWidget*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_34(Smoke::Stack x) {
        // void insertRow(int, QLayout*)
        this->QFormLayout::insertRow((int)x[1].s_int,(QLayout*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_35(Smoke::Stack x) {
        // void setItem(int, QFormLayout::ItemRole, QLayoutItem*)
        this->QFormLayout::setItem((int)x[1].s_int,(QFormLayout::ItemRole)x[2].s_enum,(QLayoutItem*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void setWidget(int, QFormLayout::ItemRole, QWidget*)
        this->QFormLayout::setWidget((int)x[1].s_int,(QFormLayout::ItemRole)x[2].s_enum,(QWidget*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // void setLayout(int, QFormLayout::ItemRole, QLayout*)
        this->QFormLayout::setLayout((int)x[1].s_int,(QFormLayout::ItemRole)x[2].s_enum,(QLayout*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // QLayoutItem* itemAt(int, QFormLayout::ItemRole) const
        QLayoutItem* xret = ((const x_QFormLayout*)this)->QFormLayout::itemAt((int)x[1].s_int,(QFormLayout::ItemRole)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    void x_39(Smoke::Stack x) {
        // void getItemPosition(int, int*, QFormLayout::ItemRole*) const
        ((const x_QFormLayout*)this)->QFormLayout::getItemPosition((int)x[1].s_int,(int*)x[2].s_class,(QFormLayout::ItemRole*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // void getWidgetPosition(QWidget*, int*, QFormLayout::ItemRole*) const
        ((const x_QFormLayout*)this)->QFormLayout::getWidgetPosition((QWidget*)x[1].s_class,(int*)x[2].s_class,(QFormLayout::ItemRole*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // void getLayoutPosition(QLayout*, int*, QFormLayout::ItemRole*) const
        ((const x_QFormLayout*)this)->QFormLayout::getLayoutPosition((QLayout*)x[1].s_class,(int*)x[2].s_class,(QFormLayout::ItemRole*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // QWidget* labelForField(QWidget*) const
        QWidget* xret = ((const x_QFormLayout*)this)->QFormLayout::labelForField((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    void x_43(Smoke::Stack x) {
        // QWidget* labelForField(QLayout*) const
        QWidget* xret = ((const x_QFormLayout*)this)->QFormLayout::labelForField((QLayout*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    void x_44(Smoke::Stack x) {
        // void addItem(QLayoutItem*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            this->QFormLayout::addItem((QLayoutItem*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->addItem((QLayoutItem*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_45(Smoke::Stack x) {
        // QLayoutItem* itemAt(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            QLayoutItem* xret = ((const x_QFormLayout*)this)->QFormLayout::itemAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        } else {
            QLayoutItem* xret = ((const x_QFormLayout*)this)->itemAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        }
    }
    void x_46(Smoke::Stack x) {
        // QLayoutItem* takeAt(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            QLayoutItem* xret = this->QFormLayout::takeAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        } else {
            QLayoutItem* xret = this->takeAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        }
    }
    void x_47(Smoke::Stack x) {
        // void setGeometry(const QRect&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            this->QFormLayout::setGeometry(*(const QRect*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setGeometry(*(const QRect*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_48(Smoke::Stack x) {
        // QSize minimumSize() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            QSize xret = ((const x_QFormLayout*)this)->QFormLayout::minimumSize();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QFormLayout*)this)->minimumSize();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_49(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            QSize xret = ((const x_QFormLayout*)this)->QFormLayout::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QFormLayout*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_50(Smoke::Stack x) {
        // void invalidate()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            this->QFormLayout::invalidate();
            (void)x; // noop (for compiler warning)
        } else {
            this->invalidate();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_51(Smoke::Stack x) {
        // bool hasHeightForWidth() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            bool xret = ((const x_QFormLayout*)this)->QFormLayout::hasHeightForWidth();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QFormLayout*)this)->hasHeightForWidth();
            x[0].s_bool = xret;
        }
    }
    void x_52(Smoke::Stack x) {
        // int heightForWidth(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            int xret = ((const x_QFormLayout*)this)->QFormLayout::heightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QFormLayout*)this)->heightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        }
    }
    void x_53(Smoke::Stack x) {
        // QFlags<Qt::Orientation> expandingDirections() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            QFlags<Qt::Orientation> xret = ((const x_QFormLayout*)this)->QFormLayout::expandingDirections();
            x[0].s_uint = (uint)xret;
        } else {
            QFlags<Qt::Orientation> xret = ((const x_QFormLayout*)this)->expandingDirections();
            x[0].s_uint = (uint)xret;
        }
    }
    void x_54(Smoke::Stack x) {
        // int count() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFormLayout*>(this))) {
            int xret = ((const x_QFormLayout*)this)->QFormLayout::count();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QFormLayout*)this)->count();
            x[0].s_int = xret;
        }
    }
    void x_55(Smoke::Stack x) {
        // int rowCount() const
        int xret = ((const x_QFormLayout*)this)->QFormLayout::rowCount();
        x[0].s_int = xret;
    }
    static void x_56(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFormLayout::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_57(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFormLayout::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_58(Smoke::Stack x) {
        // QFormLayout* QFormLayout()
        x_QFormLayout* xret = new x_QFormLayout((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_59(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFormLayout::staticMetaObject;
    }
    static void x_60(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::FieldsStayAtSizeHint;
    }
    static void x_61(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::ExpandingFieldsGrow;
    }
    static void x_62(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::AllNonFixedFieldsGrow;
    }
    static void x_63(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::DontWrapRows;
    }
    static void x_64(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::WrapLongRows;
    }
    static void x_65(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::WrapAllRows;
    }
    static void x_66(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::LabelRole;
    }
    static void x_67(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::FieldRole;
    }
    static void x_68(Smoke::Stack x) {
        x[0].s_enum = (long)QFormLayout::SpanningRole;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3607, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFormLayout::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3608, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFormLayout::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(3613, (void*)this, x)) return (int)x[0].s_int;
        return this->QFormLayout::qt_metacall(x1, x2, x3);
    }
    virtual void addItem(QLayoutItem* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3650, (void*)this, x)) return;
        this->QFormLayout::addItem(x1);
    }
    virtual void setGeometry(const QRect& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(3653, (void*)this, x)) return;
        this->QFormLayout::setGeometry(x1);
    }
    virtual QLayoutItem* itemAt(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3651, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QFormLayout::itemAt(x1);
    }
    virtual QLayoutItem* takeAt(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3652, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QFormLayout::takeAt(x1);
    }
    virtual int indexOf(QWidget* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(7272, (void*)this, x)) return (int)x[0].s_int;
        return this->QLayout::indexOf(x1);
    }
    virtual int count() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3660, (void*)this, x)) return (int)x[0].s_int;
        return this->QFormLayout::count();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (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(8375, (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(8376, (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(7284, (void*)this, x)) return;
        this->QLayout::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3655, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFormLayout::sizeHint();
    }
    virtual QSize minimumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3654, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFormLayout::minimumSize();
    }
    virtual QSize maximumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7268, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QLayout::maximumSize();
    }
    virtual QFlags<Qt::Orientation> expandingDirections() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3659, (void*)this, x)) return (QFlags<Qt::Orientation>)x[0].s_uint;
        return this->QFormLayout::expandingDirections();
    }
    virtual QRect geometry() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7259, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QLayout::geometry();
    }
    virtual bool isEmpty() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7274, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QLayout::isEmpty();
    }
    virtual bool hasHeightForWidth() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3657, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFormLayout::hasHeightForWidth();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(3658, (void*)this, x)) return (int)x[0].s_int;
        return this->QFormLayout::heightForWidth(x1);
    }
    virtual int minimumHeightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(7309, (void*)this, x)) return (int)x[0].s_int;
        return this->QLayoutItem::minimumHeightForWidth(x1);
    }
    virtual void invalidate() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3656, (void*)this, x)) return;
        this->QFormLayout::invalidate();
    }
    virtual QWidget* widget() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7311, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QLayoutItem::widget();
    }
    virtual QLayout* layout() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7279, (void*)this, x)) return (QLayout*)x[0].s_class;
        return this->QLayout::layout();
    }
    virtual QSpacerItem* spacerItem() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(7313, (void*)this, x)) return (QSpacerItem*)x[0].s_class;
        return this->QLayoutItem::spacerItem();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 293: //QFormLayout::FieldGrowthPolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFormLayout::FieldGrowthPolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QFormLayout::FieldGrowthPolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFormLayout::FieldGrowthPolicy*)xdata = (QFormLayout::FieldGrowthPolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFormLayout::FieldGrowthPolicy*)xdata;
                    break;
            }
            break;
        case 296: //QFormLayout::RowWrapPolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFormLayout::RowWrapPolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QFormLayout::RowWrapPolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFormLayout::RowWrapPolicy*)xdata = (QFormLayout::RowWrapPolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFormLayout::RowWrapPolicy*)xdata;
                    break;
            }
            break;
        case 294: //QFormLayout::ItemRole
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFormLayout::ItemRole;
                    break;
                case Smoke::EnumDelete:
                    delete (QFormLayout::ItemRole*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFormLayout::ItemRole*)xdata = (QFormLayout::ItemRole)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFormLayout::ItemRole*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFormLayout() { this->_binding->deleted(118, (void*)this); }
};
void xenum_QFormLayout(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFormLayout::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFormLayout(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFormLayout *xself = (x_QFormLayout*)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_QFormLayout::x_3(args);	break;
        case 4: x_QFormLayout::x_4(args);	break;
        case 5: x_QFormLayout::x_5(args);	break;
        case 6: x_QFormLayout::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFormLayout::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: xself->x_51(args);	break;
        case 52: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: x_QFormLayout::x_56(args);	break;
        case 57: x_QFormLayout::x_57(args);	break;
        case 58: x_QFormLayout::x_58(args);	break;
        case 59: x_QFormLayout::x_59(args);	break;
        case 60: x_QFormLayout::x_60(args);	break;
        case 61: x_QFormLayout::x_61(args);	break;
        case 62: x_QFormLayout::x_62(args);	break;
        case 63: x_QFormLayout::x_63(args);	break;
        case 64: x_QFormLayout::x_64(args);	break;
        case 65: x_QFormLayout::x_65(args);	break;
        case 66: x_QFormLayout::x_66(args);	break;
        case 67: x_QFormLayout::x_67(args);	break;
        case 68: x_QFormLayout::x_68(args);	break;
        case 69: delete (QFormLayout*)xself;	break;
    }
}
class x_QFrame : public QFrame, 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<QFrame*>(this))) {
            const QMetaObject* xret = ((const x_QFrame*)this)->QFrame::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QFrame*)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<QFrame*>(this))) {
            void* xret = this->QFrame::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 = QFrame::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 = QFrame::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 = QFrame::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 = QFrame::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<QFrame*>(this))) {
            int xret = this->QFrame::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) {
        // QFrame* QFrame(QWidget*, QFlags<Qt::WindowType>)
        x_QFrame* xret = new x_QFrame((QWidget*)x[1].s_class,(QFlags<Qt::WindowType>)x[2].s_uint);
        x[0].s_class = (void*)xret;
    }
    explicit x_QFrame(QWidget* x1, QFlags<Qt::WindowType> x2) : QFrame(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // int frameStyle() const
        int xret = ((const x_QFrame*)this)->QFrame::frameStyle();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // void setFrameStyle(int)
        this->QFrame::setFrameStyle((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // int frameWidth() const
        int xret = ((const x_QFrame*)this)->QFrame::frameWidth();
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFrame*>(this))) {
            QSize xret = ((const x_QFrame*)this)->QFrame::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QFrame*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_13(Smoke::Stack x) {
        // QFrame::Shape frameShape() const
        QFrame::Shape xret = ((const x_QFrame*)this)->QFrame::frameShape();
        x[0].s_enum = xret;
    }
    void x_14(Smoke::Stack x) {
        // void setFrameShape(QFrame::Shape)
        this->QFrame::setFrameShape((QFrame::Shape)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // QFrame::Shadow frameShadow() const
        QFrame::Shadow xret = ((const x_QFrame*)this)->QFrame::frameShadow();
        x[0].s_enum = xret;
    }
    void x_16(Smoke::Stack x) {
        // void setFrameShadow(QFrame::Shadow)
        this->QFrame::setFrameShadow((QFrame::Shadow)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // int lineWidth() const
        int xret = ((const x_QFrame*)this)->QFrame::lineWidth();
        x[0].s_int = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setLineWidth(int)
        this->QFrame::setLineWidth((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // int midLineWidth() const
        int xret = ((const x_QFrame*)this)->QFrame::midLineWidth();
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // void setMidLineWidth(int)
        this->QFrame::setMidLineWidth((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // QRect frameRect() const
        QRect xret = ((const x_QFrame*)this)->QFrame::frameRect();
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_22(Smoke::Stack x) {
        // void setFrameRect(const QRect&)
        this->QFrame::setFrameRect(*(const QRect*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFrame*>(this))) {
            bool xret = this->QFrame::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_24(Smoke::Stack x) {
        // void paintEvent(QPaintEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFrame*>(this))) {
            this->QFrame::paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QFrame*>(this))) {
            this->QFrame::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_26(Smoke::Stack x) {
        // void drawFrame(QPainter*)
        this->QFrame::drawFrame((QPainter*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_27(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QFrame::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_28(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QFrame::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_29(Smoke::Stack x) {
        // QFrame* QFrame()
        x_QFrame* xret = new x_QFrame((QWidget*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_30(Smoke::Stack x) {
        // QFrame* QFrame(QWidget*)
        x_QFrame* xret = new x_QFrame((QWidget*)x[1].s_class,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_31(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QFrame::staticMetaObject;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::NoFrame;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Box;
    }
    static void x_34(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Panel;
    }
    static void x_35(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::WinPanel;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::HLine;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::VLine;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::StyledPanel;
    }
    static void x_39(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Plain;
    }
    static void x_40(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Raised;
    }
    static void x_41(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Sunken;
    }
    static void x_42(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Shadow_Mask;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QFrame::Shape_Mask;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3676, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QFrame::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3677, (void*)this, x)) return (void*)x[0].s_class;
        return this->QFrame::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(3682, (void*)this, x)) return (int)x[0].s_int;
        return this->QFrame::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(15532, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3687, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFrame::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15564, (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(15568, (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(15617, (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(15618, (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(15619, (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(15620, (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(15621, (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(15622, (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(15623, (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(15624, (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(15625, (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(15626, (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(15627, (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(3699, (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(15629, (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(15630, (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(15631, (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(15632, (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(15633, (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(15634, (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(15635, (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(15636, (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(15637, (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(15638, (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(15639, (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(15640, (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(15641, (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(3700, (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(15644, (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(15645, (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(15652, (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(15655, (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(15656, (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(15657, (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(15658, (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(15659, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15660, (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(3698, (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(8375, (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(8376, (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(8377, (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(8378, (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(8379, (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(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(15374, (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(15606, (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(15643, (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 299: //QFrame::Shape
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFrame::Shape;
                    break;
                case Smoke::EnumDelete:
                    delete (QFrame::Shape*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFrame::Shape*)xdata = (QFrame::Shape)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFrame::Shape*)xdata;
                    break;
            }
            break;
        case 298: //QFrame::Shadow
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFrame::Shadow;
                    break;
                case Smoke::EnumDelete:
                    delete (QFrame::Shadow*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFrame::Shadow*)xdata = (QFrame::Shadow)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFrame::Shadow*)xdata;
                    break;
            }
            break;
        case 300: //QFrame::StyleMask
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QFrame::StyleMask;
                    break;
                case Smoke::EnumDelete:
                    delete (QFrame::StyleMask*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QFrame::StyleMask*)xdata = (QFrame::StyleMask)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QFrame::StyleMask*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QFrame() { this->_binding->deleted(119, (void*)this); }
};
void xenum_QFrame(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QFrame::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QFrame(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QFrame *xself = (x_QFrame*)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_QFrame::x_3(args);	break;
        case 4: x_QFrame::x_4(args);	break;
        case 5: x_QFrame::x_5(args);	break;
        case 6: x_QFrame::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QFrame::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: x_QFrame::x_27(args);	break;
        case 28: x_QFrame::x_28(args);	break;
        case 29: x_QFrame::x_29(args);	break;
        case 30: x_QFrame::x_30(args);	break;
        case 31: x_QFrame::x_31(args);	break;
        case 32: x_QFrame::x_32(args);	break;
        case 33: x_QFrame::x_33(args);	break;
        case 34: x_QFrame::x_34(args);	break;
        case 35: x_QFrame::x_35(args);	break;
        case 36: x_QFrame::x_36(args);	break;
        case 37: x_QFrame::x_37(args);	break;
        case 38: x_QFrame::x_38(args);	break;
        case 39: x_QFrame::x_39(args);	break;
        case 40: x_QFrame::x_40(args);	break;
        case 41: x_QFrame::x_41(args);	break;
        case 42: x_QFrame::x_42(args);	break;
        case 43: x_QFrame::x_43(args);	break;
        case 44: delete (QFrame*)xself;	break;
    }
}
class x_QGesture : public QGesture, 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<QGesture*>(this))) {
            const QMetaObject* xret = ((const x_QGesture*)this)->QGesture::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QGesture*)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<QGesture*>(this))) {
            void* xret = this->QGesture::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 = QGesture::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 = QGesture::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 = QGesture::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 = QGesture::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<QGesture*>(this))) {
            int xret = this->QGesture::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) {
        // QGesture* QGesture(QObject*)
        x_QGesture* xret = new x_QGesture((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGesture(QObject* x1) : QGesture(x1) {}
    void x_9(Smoke::Stack x) {
        // Qt::GestureType gestureType() const
        Qt::GestureType xret = ((const x_QGesture*)this)->QGesture::gestureType();
        x[0].s_enum = xret;
    }
    void x_10(Smoke::Stack x) {
        // Qt::GestureState state() const
        Qt::GestureState xret = ((const x_QGesture*)this)->QGesture::state();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // QPointF hotSpot() const
        QPointF xret = ((const x_QGesture*)this)->QGesture::hotSpot();
        x[0].s_class = (void*)new QPointF(xret);
    }
    void x_12(Smoke::Stack x) {
        // void setHotSpot(const QPointF&)
        this->QGesture::setHotSpot(*(const QPointF*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // bool hasHotSpot() const
        bool xret = ((const x_QGesture*)this)->QGesture::hasHotSpot();
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // void unsetHotSpot()
        this->QGesture::unsetHotSpot();
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void setGestureCancelPolicy(QGesture::GestureCancelPolicy)
        this->QGesture::setGestureCancelPolicy((QGesture::GestureCancelPolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // QGesture::GestureCancelPolicy gestureCancelPolicy() const
        QGesture::GestureCancelPolicy xret = ((const x_QGesture*)this)->QGesture::gestureCancelPolicy();
        x[0].s_enum = xret;
    }
    static void x_17(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QGesture::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 = QGesture::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) {
        // QGesture* QGesture()
        x_QGesture* xret = new x_QGesture((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_20(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QGesture::staticMetaObject;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QGesture::CancelNone;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QGesture::CancelAllInContext;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3720, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QGesture::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3721, (void*)this, x)) return (void*)x[0].s_class;
        return this->QGesture::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(3726, (void*)this, x)) return (int)x[0].s_int;
        return this->QGesture::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (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(8375, (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(8376, (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(8377, (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(8378, (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(8379, (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(8380, (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 303: //QGesture::GestureCancelPolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QGesture::GestureCancelPolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QGesture::GestureCancelPolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QGesture::GestureCancelPolicy*)xdata = (QGesture::GestureCancelPolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QGesture::GestureCancelPolicy*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QGesture() { this->_binding->deleted(120, (void*)this); }
};
void xenum_QGesture(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QGesture::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QGesture(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGesture *xself = (x_QGesture*)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_QGesture::x_3(args);	break;
        case 4: x_QGesture::x_4(args);	break;
        case 5: x_QGesture::x_5(args);	break;
        case 6: x_QGesture::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QGesture::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: x_QGesture::x_17(args);	break;
        case 18: x_QGesture::x_18(args);	break;
        case 19: x_QGesture::x_19(args);	break;
        case 20: x_QGesture::x_20(args);	break;
        case 21: x_QGesture::x_21(args);	break;
        case 22: x_QGesture::x_22(args);	break;
        case 23: delete (QGesture*)xself;	break;
    }
}
class x_QGestureEvent : public QGestureEvent, 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) {
        // QGestureEvent* QGestureEvent(const QList<QGesture*>&)
        x_QGestureEvent* xret = new x_QGestureEvent(*(const QList<QGesture*>*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGestureEvent(const QList<QGesture*>& x1) : QGestureEvent(x1) {}
    void x_2(Smoke::Stack x) {
        // QList<QGesture*> gestures() const
        QList<QGesture*> xret = ((const x_QGestureEvent*)this)->QGestureEvent::gestures();
        x[0].s_class = (void*)new QList<QGesture*>(xret);
    }
    void x_3(Smoke::Stack x) {
        // QGesture* gesture(Qt::GestureType) const
        QGesture* xret = ((const x_QGestureEvent*)this)->QGestureEvent::gesture((Qt::GestureType)x[1].s_enum);
        x[0].s_class = (void*)xret;
    }
    void x_4(Smoke::Stack x) {
        // QList<QGesture*> activeGestures() const
        QList<QGesture*> xret = ((const x_QGestureEvent*)this)->QGestureEvent::activeGestures();
        x[0].s_class = (void*)new QList<QGesture*>(xret);
    }
    void x_5(Smoke::Stack x) {
        // QList<QGesture*> canceledGestures() const
        QList<QGesture*> xret = ((const x_QGestureEvent*)this)->QGestureEvent::canceledGestures();
        x[0].s_class = (void*)new QList<QGesture*>(xret);
    }
    void x_6(Smoke::Stack x) {
        // void setAccepted(bool)
        this->QGestureEvent::setAccepted((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // bool isAccepted() const
        bool xret = ((const x_QGestureEvent*)this)->QGestureEvent::isAccepted();
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // void accept()
        this->QGestureEvent::accept();
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // void ignore()
        this->QGestureEvent::ignore();
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setAccepted(QGesture*, bool)
        this->QGestureEvent::setAccepted((QGesture*)x[1].s_class,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void accept(QGesture*)
        this->QGestureEvent::accept((QGesture*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void ignore(QGesture*)
        this->QGestureEvent::ignore((QGesture*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // bool isAccepted(QGesture*) const
        bool xret = ((const x_QGestureEvent*)this)->QGestureEvent::isAccepted((QGesture*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // void setAccepted(Qt::GestureType, bool)
        this->QGestureEvent::setAccepted((Qt::GestureType)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void accept(Qt::GestureType)
        this->QGestureEvent::accept((Qt::GestureType)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void ignore(Qt::GestureType)
        this->QGestureEvent::ignore((Qt::GestureType)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // bool isAccepted(Qt::GestureType) const
        bool xret = ((const x_QGestureEvent*)this)->QGestureEvent::isAccepted((Qt::GestureType)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setWidget(QWidget*)
        this->QGestureEvent::setWidget((QWidget*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QWidget* widget() const
        QWidget* xret = ((const x_QGestureEvent*)this)->QGestureEvent::widget();
        x[0].s_class = (void*)xret;
    }
    void x_20(Smoke::Stack x) {
        // QPointF mapToGraphicsScene(const QPointF&) const
        QPointF xret = ((const x_QGestureEvent*)this)->QGestureEvent::mapToGraphicsScene(*(const QPointF*)x[1].s_class);
        x[0].s_class = (void*)new QPointF(xret);
    }
    static void x_21(Smoke::Stack x) {
        // QGestureEvent* QGestureEvent(const QGestureEvent&)
        x_QGestureEvent* xret = new x_QGestureEvent(*(const QGestureEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGestureEvent(const QGestureEvent& x1) : QGestureEvent(x1) {}
    ~x_QGestureEvent() { this->_binding->deleted(121, (void*)this); }
};
void xcall_QGestureEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGestureEvent *xself = (x_QGestureEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QGestureEvent::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: 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: 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_QGestureEvent::x_21(args);	break;
        case 22: delete (QGestureEvent*)xself;	break;
    }
}
class x_QGestureRecognizer : public QGestureRecognizer, 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) {
        // QGestureRecognizer* QGestureRecognizer()
        x_QGestureRecognizer* xret = new x_QGestureRecognizer();
        x[0].s_class = (void*)xret;
    }
    explicit x_QGestureRecognizer() : QGestureRecognizer() {}
    void x_2(Smoke::Stack x) {
        // virtual QGesture* create(QObject*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGestureRecognizer*>(this))) {
            QGesture* xret = this->QGestureRecognizer::create((QObject*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            QGesture* xret = this->create((QObject*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    void x_3(Smoke::Stack x) {
        // virtual QFlags<QGestureRecognizer::ResultFlag> recognize(QGesture*, QObject*, QEvent*) = 0
        QFlags<QGestureRecognizer::ResultFlag> xret = this->recognize((QGesture*)x[1].s_class,(QObject*)x[2].s_class,(QEvent*)x[3].s_class);
        x[0].s_uint = (uint)xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual void reset(QGesture*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGestureRecognizer*>(this))) {
            this->QGestureRecognizer::reset((QGesture*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->reset((QGesture*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_5(Smoke::Stack x) {
        // static Qt::GestureType registerRecognizer(QGestureRecognizer*)
        Qt::GestureType xret = QGestureRecognizer::registerRecognizer((QGestureRecognizer*)x[1].s_class);
        x[0].s_enum = xret;
    }
    static void x_6(Smoke::Stack x) {
        // static void unregisterRecognizer(Qt::GestureType)
        QGestureRecognizer::unregisterRecognizer((Qt::GestureType)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    static void x_7(Smoke::Stack x) {
        // QGestureRecognizer* QGestureRecognizer(const QGestureRecognizer&)
        x_QGestureRecognizer* xret = new x_QGestureRecognizer(*(const QGestureRecognizer*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGestureRecognizer(const QGestureRecognizer& x1) : QGestureRecognizer(x1) {}
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::Ignore;
    }
    static void x_9(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::MayBeGesture;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::TriggerGesture;
    }
    static void x_11(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::FinishGesture;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::CancelGesture;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::ResultState_Mask;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::ConsumeEventHint;
    }
    static void x_15(Smoke::Stack x) {
        x[0].s_enum = (long)QGestureRecognizer::ResultHint_Mask;
    }
    virtual QGesture* create(QObject* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3766, (void*)this, x)) return (QGesture*)x[0].s_class;
        return this->QGestureRecognizer::create(x1);
    }
    virtual QFlags<QGestureRecognizer::ResultFlag> recognize(QGesture* x1, QObject* x2, QEvent* x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)x3;
        this->_binding->callMethod(3767, (void*)this, x, true /*pure virtual*/);
        return (QFlags<QGestureRecognizer::ResultFlag>)x[0].s_uint;
    }
    virtual void reset(QGesture* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3768, (void*)this, x)) return;
        this->QGestureRecognizer::reset(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 306: //QGestureRecognizer::ResultFlag
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QGestureRecognizer::ResultFlag;
                    break;
                case Smoke::EnumDelete:
                    delete (QGestureRecognizer::ResultFlag*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QGestureRecognizer::ResultFlag*)xdata = (QGestureRecognizer::ResultFlag)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QGestureRecognizer::ResultFlag*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QGestureRecognizer() { this->_binding->deleted(122, (void*)this); }
};
void xenum_QGestureRecognizer(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QGestureRecognizer::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QGestureRecognizer(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGestureRecognizer *xself = (x_QGestureRecognizer*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QGestureRecognizer::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QGestureRecognizer::x_5(args);	break;
        case 6: x_QGestureRecognizer::x_6(args);	break;
        case 7: x_QGestureRecognizer::x_7(args);	break;
        case 8: x_QGestureRecognizer::x_8(args);	break;
        case 9: x_QGestureRecognizer::x_9(args);	break;
        case 10: x_QGestureRecognizer::x_10(args);	break;
        case 11: x_QGestureRecognizer::x_11(args);	break;
        case 12: x_QGestureRecognizer::x_12(args);	break;
        case 13: x_QGestureRecognizer::x_13(args);	break;
        case 14: x_QGestureRecognizer::x_14(args);	break;
        case 15: x_QGestureRecognizer::x_15(args);	break;
        case 16: delete (QGestureRecognizer*)xself;	break;
    }
}

}
