//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_QGraphicsWidget : public QGraphicsWidget, 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<QGraphicsWidget*>(this))) {
            const QMetaObject* xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QGraphicsWidget*)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<QGraphicsWidget*>(this))) {
            void* xret = this->QGraphicsWidget::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 = QGraphicsWidget::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 = QGraphicsWidget::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 = QGraphicsWidget::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 = QGraphicsWidget::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<QGraphicsWidget*>(this))) {
            int xret = this->QGraphicsWidget::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) {
        // QGraphicsWidget* QGraphicsWidget(QGraphicsItem*, QFlags<Qt::WindowType>)
        x_QGraphicsWidget* xret = new x_QGraphicsWidget((QGraphicsItem*)x[1].s_class,(QFlags<Qt::WindowType>)x[2].s_uint);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGraphicsWidget(QGraphicsItem* x1, QFlags<Qt::WindowType> x2) : QGraphicsWidget(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // QGraphicsLayout* layout() const
        QGraphicsLayout* xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::layout();
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // void setLayout(QGraphicsLayout*)
        this->QGraphicsWidget::setLayout((QGraphicsLayout*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void adjustSize()
        this->QGraphicsWidget::adjustSize();
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // Qt::LayoutDirection layoutDirection() const
        Qt::LayoutDirection xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::layoutDirection();
        x[0].s_enum = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setLayoutDirection(Qt::LayoutDirection)
        this->QGraphicsWidget::setLayoutDirection((Qt::LayoutDirection)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void unsetLayoutDirection()
        this->QGraphicsWidget::unsetLayoutDirection();
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // QStyle* style() const
        QStyle* xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::style();
        x[0].s_class = (void*)xret;
    }
    void x_16(Smoke::Stack x) {
        // void setStyle(QStyle*)
        this->QGraphicsWidget::setStyle((QStyle*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // QFont font() const
        QFont xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::font();
        x[0].s_class = (void*)new QFont(xret);
    }
    void x_18(Smoke::Stack x) {
        // void setFont(const QFont&)
        this->QGraphicsWidget::setFont(*(const QFont*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QPalette palette() const
        QPalette xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::palette();
        x[0].s_class = (void*)new QPalette(xret);
    }
    void x_20(Smoke::Stack x) {
        // void setPalette(const QPalette&)
        this->QGraphicsWidget::setPalette(*(const QPalette*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // bool autoFillBackground() const
        bool xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::autoFillBackground();
        x[0].s_bool = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setAutoFillBackground(bool)
        this->QGraphicsWidget::setAutoFillBackground((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void resize(const QSizeF&)
        this->QGraphicsWidget::resize(*(const QSizeF*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void resize(double, double)
        this->QGraphicsWidget::resize((double)x[1].s_double,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // QSizeF size() const
        QSizeF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::size();
        x[0].s_class = (void*)new QSizeF(xret);
    }
    void x_26(Smoke::Stack x) {
        // void setGeometry(const QRectF&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::setGeometry(*(const QRectF*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setGeometry(*(const QRectF*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_27(Smoke::Stack x) {
        // void setGeometry(double, double, double, double)
        this->QGraphicsWidget::setGeometry((double)x[1].s_double,(double)x[2].s_double,(double)x[3].s_double,(double)x[4].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // QRectF rect() const
        QRectF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::rect();
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_29(Smoke::Stack x) {
        // void setContentsMargins(double, double, double, double)
        this->QGraphicsWidget::setContentsMargins((double)x[1].s_double,(double)x[2].s_double,(double)x[3].s_double,(double)x[4].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // void getContentsMargins(double*, double*, double*, double*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            ((const x_QGraphicsWidget*)this)->QGraphicsWidget::getContentsMargins((double*)x[1].s_class,(double*)x[2].s_class,(double*)x[3].s_class,(double*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QGraphicsWidget*)this)->getContentsMargins((double*)x[1].s_class,(double*)x[2].s_class,(double*)x[3].s_class,(double*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_31(Smoke::Stack x) {
        // void setWindowFrameMargins(double, double, double, double)
        this->QGraphicsWidget::setWindowFrameMargins((double)x[1].s_double,(double)x[2].s_double,(double)x[3].s_double,(double)x[4].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // void getWindowFrameMargins(double*, double*, double*, double*) const
        ((const x_QGraphicsWidget*)this)->QGraphicsWidget::getWindowFrameMargins((double*)x[1].s_class,(double*)x[2].s_class,(double*)x[3].s_class,(double*)x[4].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_33(Smoke::Stack x) {
        // void unsetWindowFrameMargins()
        this->QGraphicsWidget::unsetWindowFrameMargins();
        (void)x; // noop (for compiler warning)
    }
    void x_34(Smoke::Stack x) {
        // QRectF windowFrameGeometry() const
        QRectF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowFrameGeometry();
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_35(Smoke::Stack x) {
        // QRectF windowFrameRect() const
        QRectF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowFrameRect();
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_36(Smoke::Stack x) {
        // QFlags<Qt::WindowType> windowFlags() const
        QFlags<Qt::WindowType> xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowFlags();
        x[0].s_uint = (uint)xret;
    }
    void x_37(Smoke::Stack x) {
        // Qt::WindowType windowType() const
        Qt::WindowType xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowType();
        x[0].s_enum = xret;
    }
    void x_38(Smoke::Stack x) {
        // void setWindowFlags(QFlags<Qt::WindowType>)
        this->QGraphicsWidget::setWindowFlags((QFlags<Qt::WindowType>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_39(Smoke::Stack x) {
        // bool isActiveWindow() const
        bool xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::isActiveWindow();
        x[0].s_bool = xret;
    }
    void x_40(Smoke::Stack x) {
        // void setWindowTitle(const QString&)
        this->QGraphicsWidget::setWindowTitle(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // QString windowTitle() const
        QString xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowTitle();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_42(Smoke::Stack x) {
        // Qt::FocusPolicy focusPolicy() const
        Qt::FocusPolicy xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::focusPolicy();
        x[0].s_enum = xret;
    }
    void x_43(Smoke::Stack x) {
        // void setFocusPolicy(Qt::FocusPolicy)
        this->QGraphicsWidget::setFocusPolicy((Qt::FocusPolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    static void x_44(Smoke::Stack x) {
        // static void setTabOrder(QGraphicsWidget*, QGraphicsWidget*)
        QGraphicsWidget::setTabOrder((QGraphicsWidget*)x[1].s_class,(QGraphicsWidget*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_45(Smoke::Stack x) {
        // QGraphicsWidget* focusWidget() const
        QGraphicsWidget* xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::focusWidget();
        x[0].s_class = (void*)xret;
    }
    void x_46(Smoke::Stack x) {
        // int grabShortcut(const QKeySequence&, Qt::ShortcutContext)
        int xret = this->QGraphicsWidget::grabShortcut(*(const QKeySequence*)x[1].s_class,(Qt::ShortcutContext)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_47(Smoke::Stack x) {
        // void releaseShortcut(int)
        this->QGraphicsWidget::releaseShortcut((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // void setShortcutEnabled(int, bool)
        this->QGraphicsWidget::setShortcutEnabled((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_49(Smoke::Stack x) {
        // void setShortcutAutoRepeat(int, bool)
        this->QGraphicsWidget::setShortcutAutoRepeat((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_50(Smoke::Stack x) {
        // void addAction(QAction*)
        this->QGraphicsWidget::addAction((QAction*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_51(Smoke::Stack x) {
        // void addActions(QList<QAction*>)
        this->QGraphicsWidget::addActions(*(QList<QAction*>*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_52(Smoke::Stack x) {
        // void insertAction(QAction*, QAction*)
        this->QGraphicsWidget::insertAction((QAction*)x[1].s_class,(QAction*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_53(Smoke::Stack x) {
        // void insertActions(QAction*, QList<QAction*>)
        this->QGraphicsWidget::insertActions((QAction*)x[1].s_class,*(QList<QAction*>*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_54(Smoke::Stack x) {
        // void removeAction(QAction*)
        this->QGraphicsWidget::removeAction((QAction*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_55(Smoke::Stack x) {
        // QList<QAction*> actions() const
        QList<QAction*> xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::actions();
        x[0].s_class = (void*)new QList<QAction*>(xret);
    }
    void x_56(Smoke::Stack x) {
        // void setAttribute(Qt::WidgetAttribute, bool)
        this->QGraphicsWidget::setAttribute((Qt::WidgetAttribute)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_57(Smoke::Stack x) {
        // bool testAttribute(Qt::WidgetAttribute) const
        bool xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::testAttribute((Qt::WidgetAttribute)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_58(Smoke::Stack x) {
        // int type() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            int xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::type();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QGraphicsWidget*)this)->type();
            x[0].s_int = xret;
        }
    }
    void x_59(Smoke::Stack x) {
        // void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::paint((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->paint((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_60(Smoke::Stack x) {
        // virtual void paintWindowFrame(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::paintWindowFrame((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->paintWindowFrame((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_61(Smoke::Stack x) {
        // QRectF boundingRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            QRectF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        } else {
            QRectF xret = ((const x_QGraphicsWidget*)this)->boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        }
    }
    void x_62(Smoke::Stack x) {
        // QPainterPath shape() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            QPainterPath xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::shape();
            x[0].s_class = (void*)new QPainterPath(xret);
        } else {
            QPainterPath xret = ((const x_QGraphicsWidget*)this)->shape();
            x[0].s_class = (void*)new QPainterPath(xret);
        }
    }
    void x_63(Smoke::Stack x) {
        // const QList<QObject*>& children() const
        const QList<QObject*>& xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::children();
        x[0].s_class = (void*)&xret;
    }
    void x_64(Smoke::Stack x) {
        // void geometryChanged()
        this->QGraphicsWidget::geometryChanged();
        (void)x; // noop (for compiler warning)
    }
    void x_65(Smoke::Stack x) {
        // void layoutChanged()
        this->QGraphicsWidget::layoutChanged();
        (void)x; // noop (for compiler warning)
    }
    void x_66(Smoke::Stack x) {
        // bool close()
        bool xret = this->QGraphicsWidget::close();
        x[0].s_bool = xret;
    }
    void x_67(Smoke::Stack x) {
        // virtual void initStyleOption(QStyleOption*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            ((const x_QGraphicsWidget*)this)->QGraphicsWidget::initStyleOption((QStyleOption*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QGraphicsWidget*)this)->initStyleOption((QStyleOption*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_68(Smoke::Stack x) {
        // QSizeF sizeHint(Qt::SizeHint, const QSizeF&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            QSizeF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::sizeHint((Qt::SizeHint)x[1].s_enum,*(const QSizeF*)x[2].s_class);
            x[0].s_class = (void*)new QSizeF(xret);
        } else {
            QSizeF xret = ((const x_QGraphicsWidget*)this)->sizeHint((Qt::SizeHint)x[1].s_enum,*(const QSizeF*)x[2].s_class);
            x[0].s_class = (void*)new QSizeF(xret);
        }
    }
    void x_69(Smoke::Stack x) {
        // void updateGeometry()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::updateGeometry();
            (void)x; // noop (for compiler warning)
        } else {
            this->updateGeometry();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_70(Smoke::Stack x) {
        // QVariant itemChange(QGraphicsItem::GraphicsItemChange, const QVariant&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            QVariant xret = this->QGraphicsWidget::itemChange((QGraphicsItem::GraphicsItemChange)x[1].s_enum,*(const QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = this->itemChange((QGraphicsItem::GraphicsItemChange)x[1].s_enum,*(const QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_71(Smoke::Stack x) {
        // virtual QVariant propertyChange(const QString&, const QVariant&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            QVariant xret = this->QGraphicsWidget::propertyChange(*(const QString*)x[1].s_class,*(const QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = this->propertyChange(*(const QString*)x[1].s_class,*(const QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_72(Smoke::Stack x) {
        // bool sceneEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            bool xret = this->QGraphicsWidget::sceneEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->sceneEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_73(Smoke::Stack x) {
        // virtual bool windowFrameEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            bool xret = this->QGraphicsWidget::windowFrameEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->windowFrameEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_74(Smoke::Stack x) {
        // virtual Qt::WindowFrameSection windowFrameSectionAt(const QPointF&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            Qt::WindowFrameSection xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::windowFrameSectionAt(*(const QPointF*)x[1].s_class);
            x[0].s_enum = xret;
        } else {
            Qt::WindowFrameSection xret = ((const x_QGraphicsWidget*)this)->windowFrameSectionAt(*(const QPointF*)x[1].s_class);
            x[0].s_enum = xret;
        }
    }
    void x_75(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            bool xret = this->QGraphicsWidget::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_76(Smoke::Stack x) {
        // virtual void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::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_77(Smoke::Stack x) {
        // virtual void closeEvent(QCloseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::closeEvent((QCloseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->closeEvent((QCloseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_78(Smoke::Stack x) {
        // void focusInEvent(QFocusEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::focusInEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->focusInEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_79(Smoke::Stack x) {
        // virtual bool focusNextPrevChild(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            bool xret = this->QGraphicsWidget::focusNextPrevChild((bool)x[1].s_bool);
            x[0].s_bool = xret;
        } else {
            bool xret = this->focusNextPrevChild((bool)x[1].s_bool);
            x[0].s_bool = xret;
        }
    }
    void x_80(Smoke::Stack x) {
        // void focusOutEvent(QFocusEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::focusOutEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->focusOutEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_81(Smoke::Stack x) {
        // virtual void hideEvent(QHideEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::hideEvent((QHideEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->hideEvent((QHideEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_82(Smoke::Stack x) {
        // virtual void moveEvent(QGraphicsSceneMoveEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::moveEvent((QGraphicsSceneMoveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->moveEvent((QGraphicsSceneMoveEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_83(Smoke::Stack x) {
        // virtual void polishEvent()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::polishEvent();
            (void)x; // noop (for compiler warning)
        } else {
            this->polishEvent();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_84(Smoke::Stack x) {
        // virtual void resizeEvent(QGraphicsSceneResizeEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::resizeEvent((QGraphicsSceneResizeEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->resizeEvent((QGraphicsSceneResizeEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_85(Smoke::Stack x) {
        // virtual void showEvent(QShowEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::showEvent((QShowEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->showEvent((QShowEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_86(Smoke::Stack x) {
        // virtual void hoverMoveEvent(QGraphicsSceneHoverEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::hoverMoveEvent((QGraphicsSceneHoverEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->hoverMoveEvent((QGraphicsSceneHoverEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_87(Smoke::Stack x) {
        // virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::hoverLeaveEvent((QGraphicsSceneHoverEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->hoverLeaveEvent((QGraphicsSceneHoverEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_88(Smoke::Stack x) {
        // virtual void grabMouseEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::grabMouseEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->grabMouseEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_89(Smoke::Stack x) {
        // virtual void ungrabMouseEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::ungrabMouseEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->ungrabMouseEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_90(Smoke::Stack x) {
        // virtual void grabKeyboardEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::grabKeyboardEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->grabKeyboardEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_91(Smoke::Stack x) {
        // virtual void ungrabKeyboardEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGraphicsWidget*>(this))) {
            this->QGraphicsWidget::ungrabKeyboardEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->ungrabKeyboardEvent((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_92(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QGraphicsWidget::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_93(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QGraphicsWidget::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_94(Smoke::Stack x) {
        // QGraphicsWidget* QGraphicsWidget()
        x_QGraphicsWidget* xret = new x_QGraphicsWidget((QGraphicsItem*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_95(Smoke::Stack x) {
        // QGraphicsWidget* QGraphicsWidget(QGraphicsItem*)
        x_QGraphicsWidget* xret = new x_QGraphicsWidget((QGraphicsItem*)x[1].s_class,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    void x_96(Smoke::Stack x) {
        // int grabShortcut(const QKeySequence&)
        int xret = this->QGraphicsWidget::grabShortcut(*(const QKeySequence*)x[1].s_class,(Qt::ShortcutContext)Qt::WindowShortcut);
        x[0].s_int = xret;
    }
    void x_97(Smoke::Stack x) {
        // void setShortcutEnabled(int)
        this->QGraphicsWidget::setShortcutEnabled((int)x[1].s_int,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_98(Smoke::Stack x) {
        // void setShortcutAutoRepeat(int)
        this->QGraphicsWidget::setShortcutAutoRepeat((int)x[1].s_int,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_99(Smoke::Stack x) {
        // void setAttribute(Qt::WidgetAttribute)
        this->QGraphicsWidget::setAttribute((Qt::WidgetAttribute)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_100(Smoke::Stack x) {
        // void paint(QPainter*, const QStyleOptionGraphicsItem*)
        this->QGraphicsWidget::paint((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)0);
        (void)x; // noop (for compiler warning)
    }
    void x_101(Smoke::Stack x) {
        // void paintWindowFrame(QPainter*, const QStyleOptionGraphicsItem*)
        this->QGraphicsWidget::paintWindowFrame((QPainter*)x[1].s_class,(const QStyleOptionGraphicsItem*)x[2].s_class,(QWidget*)0);
        (void)x; // noop (for compiler warning)
    }
    void x_102(Smoke::Stack x) {
        // QSizeF sizeHint(Qt::SizeHint) const
        QSizeF xret = ((const x_QGraphicsWidget*)this)->QGraphicsWidget::sizeHint((Qt::SizeHint)x[1].s_enum,(const QSizeF&)QSizeF());
        x[0].s_class = (void*)new QSizeF(xret);
    }
    static void x_103(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QGraphicsWidget::staticMetaObject;
    }
    static void x_104(Smoke::Stack x) {
        x[0].s_enum = (long)QGraphicsWidget::Type;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5809, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QGraphicsWidget::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5810, (void*)this, x)) return (void*)x[0].s_class;
        return this->QGraphicsWidget::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(5815, (void*)this, x)) return (int)x[0].s_int;
        return this->QGraphicsWidget::qt_metacall(x1, x2, x3);
    }
    virtual void paintWindowFrame(QPainter* x1, const QStyleOptionGraphicsItem* x2, QWidget* x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(5868, (void*)this, x)) return;
        this->QGraphicsWidget::paintWindowFrame(x1, x2, x3);
    }
    virtual void initStyleOption(QStyleOption* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5875, (void*)this, x)) return;
        this->QGraphicsWidget::initStyleOption(x1);
    }
    virtual QVariant propertyChange(const QString& x1, const QVariant& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(5879, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsWidget::propertyChange(x1, x2);
    }
    virtual bool windowFrameEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5881, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsWidget::windowFrameEvent(x1);
    }
    virtual Qt::WindowFrameSection windowFrameSectionAt(const QPointF& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(5882, (void*)this, x)) return (Qt::WindowFrameSection)x[0].s_enum;
        return this->QGraphicsWidget::windowFrameSectionAt(x1);
    }
    virtual void changeEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5884, (void*)this, x)) return;
        this->QGraphicsWidget::changeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5885, (void*)this, x)) return;
        this->QGraphicsWidget::closeEvent(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(5887, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsWidget::focusNextPrevChild(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5889, (void*)this, x)) return;
        this->QGraphicsWidget::hideEvent(x1);
    }
    virtual void moveEvent(QGraphicsSceneMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5890, (void*)this, x)) return;
        this->QGraphicsWidget::moveEvent(x1);
    }
    virtual void polishEvent() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5891, (void*)this, x)) return;
        this->QGraphicsWidget::polishEvent();
    }
    virtual void resizeEvent(QGraphicsSceneResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5892, (void*)this, x)) return;
        this->QGraphicsWidget::resizeEvent(x1);
    }
    virtual void showEvent(QShowEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5893, (void*)this, x)) return;
        this->QGraphicsWidget::showEvent(x1);
    }
    virtual void hoverMoveEvent(QGraphicsSceneHoverEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5894, (void*)this, x)) return;
        this->QGraphicsWidget::hoverMoveEvent(x1);
    }
    virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5895, (void*)this, x)) return;
        this->QGraphicsWidget::hoverLeaveEvent(x1);
    }
    virtual void grabMouseEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5896, (void*)this, x)) return;
        this->QGraphicsWidget::grabMouseEvent(x1);
    }
    virtual void ungrabMouseEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5897, (void*)this, x)) return;
        this->QGraphicsWidget::ungrabMouseEvent(x1);
    }
    virtual void grabKeyboardEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5898, (void*)this, x)) return;
        this->QGraphicsWidget::grabKeyboardEvent(x1);
    }
    virtual void ungrabKeyboardEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5899, (void*)this, x)) return;
        this->QGraphicsWidget::ungrabKeyboardEvent(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5883, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsWidget::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 void advance(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(4626, (void*)this, x)) return;
        this->QGraphicsItem::advance(x1);
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5869, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsWidget::boundingRect();
    }
    virtual QPainterPath shape() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5870, (void*)this, x)) {
            QPainterPath* xptr = (QPainterPath*)x[0].s_class;
            QPainterPath xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsWidget::shape();
    }
    virtual bool contains(const QPointF& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(4636, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::contains(x1);
    }
    virtual bool collidesWithItem(const QGraphicsItem* x1, Qt::ItemSelectionMode x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(4637, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::collidesWithItem(x1, x2);
    }
    virtual bool collidesWithPath(const QPainterPath& x1, Qt::ItemSelectionMode x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(4638, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::collidesWithPath(x1, x2);
    }
    virtual bool isObscuredBy(const QGraphicsItem* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4643, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::isObscuredBy(x1);
    }
    virtual QPainterPath opaqueArea() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4644, (void*)this, x)) {
            QPainterPath* xptr = (QPainterPath*)x[0].s_class;
            QPainterPath xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsItem::opaqueArea();
    }
    virtual void paint(QPainter* x1, const QStyleOptionGraphicsItem* x2, QWidget* x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(5867, (void*)this, x)) return;
        this->QGraphicsWidget::paint(x1, x2, x3);
    }
    virtual int type() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5866, (void*)this, x)) return (int)x[0].s_int;
        return this->QGraphicsWidget::type();
    }
    virtual bool sceneEventFilter(QGraphicsItem* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(4711, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::sceneEventFilter(x1, x2);
    }
    virtual bool sceneEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5880, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsWidget::sceneEvent(x1);
    }
    virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4713, (void*)this, x)) return;
        this->QGraphicsItem::contextMenuEvent(x1);
    }
    virtual void dragEnterEvent(QGraphicsSceneDragDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4714, (void*)this, x)) return;
        this->QGraphicsItem::dragEnterEvent(x1);
    }
    virtual void dragLeaveEvent(QGraphicsSceneDragDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4715, (void*)this, x)) return;
        this->QGraphicsItem::dragLeaveEvent(x1);
    }
    virtual void dragMoveEvent(QGraphicsSceneDragDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4716, (void*)this, x)) return;
        this->QGraphicsItem::dragMoveEvent(x1);
    }
    virtual void dropEvent(QGraphicsSceneDragDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4717, (void*)this, x)) return;
        this->QGraphicsItem::dropEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5886, (void*)this, x)) return;
        this->QGraphicsWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5888, (void*)this, x)) return;
        this->QGraphicsWidget::focusOutEvent(x1);
    }
    virtual void hoverEnterEvent(QGraphicsSceneHoverEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4720, (void*)this, x)) return;
        this->QGraphicsItem::hoverEnterEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4723, (void*)this, x)) return;
        this->QGraphicsItem::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4724, (void*)this, x)) return;
        this->QGraphicsItem::keyReleaseEvent(x1);
    }
    virtual void mousePressEvent(QGraphicsSceneMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4725, (void*)this, x)) return;
        this->QGraphicsItem::mousePressEvent(x1);
    }
    virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4726, (void*)this, x)) return;
        this->QGraphicsItem::mouseMoveEvent(x1);
    }
    virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4727, (void*)this, x)) return;
        this->QGraphicsItem::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4728, (void*)this, x)) return;
        this->QGraphicsItem::mouseDoubleClickEvent(x1);
    }
    virtual void wheelEvent(QGraphicsSceneWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4729, (void*)this, x)) return;
        this->QGraphicsItem::wheelEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4730, (void*)this, x)) return;
        this->QGraphicsItem::inputMethodEvent(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(4731, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsItem::inputMethodQuery(x1);
    }
    virtual QVariant itemChange(QGraphicsItem::GraphicsItemChange x1, const QVariant& x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(5878, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsWidget::itemChange(x1, x2);
    }
    virtual bool supportsExtension(QGraphicsItem::Extension x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(4733, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGraphicsItem::supportsExtension(x1);
    }
    virtual void setExtension(QGraphicsItem::Extension x1, const QVariant& x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(4734, (void*)this, x)) return;
        this->QGraphicsItem::setExtension(x1, x2);
    }
    virtual QVariant extension(const QVariant& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(4735, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsItem::extension(x1);
    }
    virtual void setGeometry(const QRectF& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(5834, (void*)this, x)) return;
        this->QGraphicsWidget::setGeometry(x1);
    }
    virtual void getContentsMargins(double* x1, double* x2, double* x3, double* x4) const {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)x3;
        x[4].s_class = (void*)x4;
        if (this->_binding->callMethod(5838, (void*)this, x)) return;
        this->QGraphicsWidget::getContentsMargins(x1, x2, x3, x4);
    }
    virtual void updateGeometry() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5877, (void*)this, x)) return;
        this->QGraphicsWidget::updateGeometry();
    }
    virtual QSizeF sizeHint(Qt::SizeHint x1, const QSizeF& x2) const {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(5876, (void*)this, x)) {
            QSizeF* xptr = (QSizeF*)x[0].s_class;
            QSizeF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGraphicsWidget::sizeHint(x1, x2);
    }
    ~x_QGraphicsWidget() { this->_binding->deleted(166, (void*)this); }
};
void xcall_QGraphicsWidget(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGraphicsWidget *xself = (x_QGraphicsWidget*)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_QGraphicsWidget::x_3(args);	break;
        case 4: x_QGraphicsWidget::x_4(args);	break;
        case 5: x_QGraphicsWidget::x_5(args);	break;
        case 6: x_QGraphicsWidget::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QGraphicsWidget::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: x_QGraphicsWidget::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: xself->x_69(args);	break;
        case 70: xself->x_70(args);	break;
        case 71: xself->x_71(args);	break;
        case 72: xself->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: xself->x_79(args);	break;
        case 80: xself->x_80(args);	break;
        case 81: xself->x_81(args);	break;
        case 82: xself->x_82(args);	break;
        case 83: xself->x_83(args);	break;
        case 84: xself->x_84(args);	break;
        case 85: xself->x_85(args);	break;
        case 86: xself->x_86(args);	break;
        case 87: xself->x_87(args);	break;
        case 88: xself->x_88(args);	break;
        case 89: xself->x_89(args);	break;
        case 90: xself->x_90(args);	break;
        case 91: xself->x_91(args);	break;
        case 92: x_QGraphicsWidget::x_92(args);	break;
        case 93: x_QGraphicsWidget::x_93(args);	break;
        case 94: x_QGraphicsWidget::x_94(args);	break;
        case 95: x_QGraphicsWidget::x_95(args);	break;
        case 96: xself->x_96(args);	break;
        case 97: xself->x_97(args);	break;
        case 98: xself->x_98(args);	break;
        case 99: xself->x_99(args);	break;
        case 100: xself->x_100(args);	break;
        case 101: xself->x_101(args);	break;
        case 102: xself->x_102(args);	break;
        case 103: x_QGraphicsWidget::x_103(args);	break;
        case 104: x_QGraphicsWidget::x_104(args);	break;
        case 105: delete (QGraphicsWidget*)xself;	break;
    }
}
class x_QGridLayout : public QGridLayout, 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<QGridLayout*>(this))) {
            const QMetaObject* xret = ((const x_QGridLayout*)this)->QGridLayout::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QGridLayout*)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<QGridLayout*>(this))) {
            void* xret = this->QGridLayout::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 = QGridLayout::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 = QGridLayout::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 = QGridLayout::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 = QGridLayout::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<QGridLayout*>(this))) {
            int xret = this->QGridLayout::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) {
        // QGridLayout* QGridLayout(QWidget*)
        x_QGridLayout* xret = new x_QGridLayout((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGridLayout(QWidget* x1) : QGridLayout(x1) {}
    static void x_9(Smoke::Stack x) {
        // QGridLayout* QGridLayout()
        x_QGridLayout* xret = new x_QGridLayout();
        x[0].s_class = (void*)xret;
    }
    explicit x_QGridLayout() : QGridLayout() {}
    void x_10(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QSize xret = ((const x_QGridLayout*)this)->QGridLayout::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QGridLayout*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_11(Smoke::Stack x) {
        // QSize minimumSize() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QSize xret = ((const x_QGridLayout*)this)->QGridLayout::minimumSize();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QGridLayout*)this)->minimumSize();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_12(Smoke::Stack x) {
        // QSize maximumSize() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QSize xret = ((const x_QGridLayout*)this)->QGridLayout::maximumSize();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QGridLayout*)this)->maximumSize();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_13(Smoke::Stack x) {
        // void setHorizontalSpacing(int)
        this->QGridLayout::setHorizontalSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // int horizontalSpacing() const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::horizontalSpacing();
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // void setVerticalSpacing(int)
        this->QGridLayout::setVerticalSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // int verticalSpacing() const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::verticalSpacing();
        x[0].s_int = xret;
    }
    void x_17(Smoke::Stack x) {
        // void setSpacing(int)
        this->QGridLayout::setSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // int spacing() const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::spacing();
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // void setRowStretch(int, int)
        this->QGridLayout::setRowStretch((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void setColumnStretch(int, int)
        this->QGridLayout::setColumnStretch((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // int rowStretch(int) const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::rowStretch((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // int columnStretch(int) const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::columnStretch((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_23(Smoke::Stack x) {
        // void setRowMinimumHeight(int, int)
        this->QGridLayout::setRowMinimumHeight((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void setColumnMinimumWidth(int, int)
        this->QGridLayout::setColumnMinimumWidth((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // int rowMinimumHeight(int) const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::rowMinimumHeight((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_26(Smoke::Stack x) {
        // int columnMinimumWidth(int) const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::columnMinimumWidth((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_27(Smoke::Stack x) {
        // int columnCount() const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::columnCount();
        x[0].s_int = xret;
    }
    void x_28(Smoke::Stack x) {
        // int rowCount() const
        int xret = ((const x_QGridLayout*)this)->QGridLayout::rowCount();
        x[0].s_int = xret;
    }
    void x_29(Smoke::Stack x) {
        // QRect cellRect(int, int) const
        QRect xret = ((const x_QGridLayout*)this)->QGridLayout::cellRect((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_30(Smoke::Stack x) {
        // bool hasHeightForWidth() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            bool xret = ((const x_QGridLayout*)this)->QGridLayout::hasHeightForWidth();
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QGridLayout*)this)->hasHeightForWidth();
            x[0].s_bool = xret;
        }
    }
    void x_31(Smoke::Stack x) {
        // int heightForWidth(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            int xret = ((const x_QGridLayout*)this)->QGridLayout::heightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QGridLayout*)this)->heightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        }
    }
    void x_32(Smoke::Stack x) {
        // int minimumHeightForWidth(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            int xret = ((const x_QGridLayout*)this)->QGridLayout::minimumHeightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QGridLayout*)this)->minimumHeightForWidth((int)x[1].s_int);
            x[0].s_int = xret;
        }
    }
    void x_33(Smoke::Stack x) {
        // QFlags<Qt::Orientation> expandingDirections() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QFlags<Qt::Orientation> xret = ((const x_QGridLayout*)this)->QGridLayout::expandingDirections();
            x[0].s_uint = (uint)xret;
        } else {
            QFlags<Qt::Orientation> xret = ((const x_QGridLayout*)this)->expandingDirections();
            x[0].s_uint = (uint)xret;
        }
    }
    void x_34(Smoke::Stack x) {
        // void invalidate()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            this->QGridLayout::invalidate();
            (void)x; // noop (for compiler warning)
        } else {
            this->invalidate();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_35(Smoke::Stack x) {
        // void addWidget(QWidget*)
        this->QGridLayout::addWidget((QWidget*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void addWidget(QWidget*, int, int, QFlags<Qt::AlignmentFlag>)
        this->QGridLayout::addWidget((QWidget*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QFlags<Qt::AlignmentFlag>)x[4].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // void addWidget(QWidget*, int, int, int, int, QFlags<Qt::AlignmentFlag>)
        this->QGridLayout::addWidget((QWidget*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // void addLayout(QLayout*, int, int, QFlags<Qt::AlignmentFlag>)
        this->QGridLayout::addLayout((QLayout*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QFlags<Qt::AlignmentFlag>)x[4].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_39(Smoke::Stack x) {
        // void addLayout(QLayout*, int, int, int, int, QFlags<Qt::AlignmentFlag>)
        this->QGridLayout::addLayout((QLayout*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // void setOriginCorner(Qt::Corner)
        this->QGridLayout::setOriginCorner((Qt::Corner)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // Qt::Corner originCorner() const
        Qt::Corner xret = ((const x_QGridLayout*)this)->QGridLayout::originCorner();
        x[0].s_enum = xret;
    }
    void x_42(Smoke::Stack x) {
        // QLayoutItem* itemAt(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QLayoutItem* xret = ((const x_QGridLayout*)this)->QGridLayout::itemAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        } else {
            QLayoutItem* xret = ((const x_QGridLayout*)this)->itemAt((int)x[1].s_int);
            x[0].s_class = (void*)xret;
        }
    }
    void x_43(Smoke::Stack x) {
        // QLayoutItem* itemAtPosition(int, int) const
        QLayoutItem* xret = ((const x_QGridLayout*)this)->QGridLayout::itemAtPosition((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_44(Smoke::Stack x) {
        // QLayoutItem* takeAt(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            QLayoutItem* xret = this->QGridLayout::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_45(Smoke::Stack x) {
        // int count() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            int xret = ((const x_QGridLayout*)this)->QGridLayout::count();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QGridLayout*)this)->count();
            x[0].s_int = xret;
        }
    }
    void x_46(Smoke::Stack x) {
        // void setGeometry(const QRect&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            this->QGridLayout::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_47(Smoke::Stack x) {
        // void addItem(QLayoutItem*, int, int, int, int, QFlags<Qt::AlignmentFlag>)
        this->QGridLayout::addItem((QLayoutItem*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // void setDefaultPositioning(int, Qt::Orientation)
        this->QGridLayout::setDefaultPositioning((int)x[1].s_int,(Qt::Orientation)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_49(Smoke::Stack x) {
        // void getItemPosition(int, int*, int*, int*, int*)
        this->QGridLayout::getItemPosition((int)x[1].s_int,(int*)x[2].s_class,(int*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_50(Smoke::Stack x) {
        // void addItem(QLayoutItem*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGridLayout*>(this))) {
            this->QGridLayout::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)
        }
    }
    static void x_51(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QGridLayout::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_52(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QGridLayout::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_53(Smoke::Stack x) {
        // void addWidget(QWidget*, int, int)
        this->QGridLayout::addWidget((QWidget*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_54(Smoke::Stack x) {
        // void addWidget(QWidget*, int, int, int, int)
        this->QGridLayout::addWidget((QWidget*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_55(Smoke::Stack x) {
        // void addLayout(QLayout*, int, int)
        this->QGridLayout::addLayout((QLayout*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_56(Smoke::Stack x) {
        // void addLayout(QLayout*, int, int, int, int)
        this->QGridLayout::addLayout((QLayout*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_57(Smoke::Stack x) {
        // void addItem(QLayoutItem*, int, int)
        this->QGridLayout::addItem((QLayoutItem*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)1,(int)1,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_58(Smoke::Stack x) {
        // void addItem(QLayoutItem*, int, int, int)
        this->QGridLayout::addItem((QLayoutItem*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)1,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    void x_59(Smoke::Stack x) {
        // void addItem(QLayoutItem*, int, int, int, int)
        this->QGridLayout::addItem((QLayoutItem*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)0);
        (void)x; // noop (for compiler warning)
    }
    static void x_60(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QGridLayout::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5914, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QGridLayout::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5915, (void*)this, x)) return (void*)x[0].s_class;
        return this->QGridLayout::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(5920, (void*)this, x)) return (int)x[0].s_int;
        return this->QGridLayout::qt_metacall(x1, x2, x3);
    }
    virtual void addItem(QLayoutItem* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5963, (void*)this, x)) return;
        this->QGridLayout::addItem(x1);
    }
    virtual void setGeometry(const QRect& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(5959, (void*)this, x)) return;
        this->QGridLayout::setGeometry(x1);
    }
    virtual QLayoutItem* itemAt(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5955, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QGridLayout::itemAt(x1);
    }
    virtual QLayoutItem* takeAt(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5957, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QGridLayout::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(5958, (void*)this, x)) return (int)x[0].s_int;
        return this->QGridLayout::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(5923, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGridLayout::sizeHint();
    }
    virtual QSize minimumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5924, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGridLayout::minimumSize();
    }
    virtual QSize maximumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5925, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGridLayout::maximumSize();
    }
    virtual QFlags<Qt::Orientation> expandingDirections() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5946, (void*)this, x)) return (QFlags<Qt::Orientation>)x[0].s_uint;
        return this->QGridLayout::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(5943, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGridLayout::hasHeightForWidth();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5944, (void*)this, x)) return (int)x[0].s_int;
        return this->QGridLayout::heightForWidth(x1);
    }
    virtual int minimumHeightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5945, (void*)this, x)) return (int)x[0].s_int;
        return this->QGridLayout::minimumHeightForWidth(x1);
    }
    virtual void invalidate() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5947, (void*)this, x)) return;
        this->QGridLayout::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();
    }
    ~x_QGridLayout() { this->_binding->deleted(167, (void*)this); }
};
void xcall_QGridLayout(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGridLayout *xself = (x_QGridLayout*)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_QGridLayout::x_3(args);	break;
        case 4: x_QGridLayout::x_4(args);	break;
        case 5: x_QGridLayout::x_5(args);	break;
        case 6: x_QGridLayout::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QGridLayout::x_8(args);	break;
        case 9: x_QGridLayout::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: x_QGridLayout::x_51(args);	break;
        case 52: x_QGridLayout::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: x_QGridLayout::x_60(args);	break;
        case 61: delete (QGridLayout*)xself;	break;
    }
}
class x_QGroupBox : public QGroupBox, 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<QGroupBox*>(this))) {
            const QMetaObject* xret = ((const x_QGroupBox*)this)->QGroupBox::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QGroupBox*)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<QGroupBox*>(this))) {
            void* xret = this->QGroupBox::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 = QGroupBox::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 = QGroupBox::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 = QGroupBox::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 = QGroupBox::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<QGroupBox*>(this))) {
            int xret = this->QGroupBox::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) {
        // QGroupBox* QGroupBox(QWidget*)
        x_QGroupBox* xret = new x_QGroupBox((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGroupBox(QWidget* x1) : QGroupBox(x1) {}
    static void x_9(Smoke::Stack x) {
        // QGroupBox* QGroupBox(const QString&, QWidget*)
        x_QGroupBox* xret = new x_QGroupBox(*(const QString*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QGroupBox(const QString& x1, QWidget* x2) : QGroupBox(x1, x2) {}
    void x_10(Smoke::Stack x) {
        // QString title() const
        QString xret = ((const x_QGroupBox*)this)->QGroupBox::title();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setTitle(const QString&)
        this->QGroupBox::setTitle(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> alignment() const
        QFlags<Qt::AlignmentFlag> xret = ((const x_QGroupBox*)this)->QGroupBox::alignment();
        x[0].s_uint = (uint)xret;
    }
    void x_13(Smoke::Stack x) {
        // void setAlignment(int)
        this->QGroupBox::setAlignment((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QSize minimumSizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            QSize xret = ((const x_QGroupBox*)this)->QGroupBox::minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QGroupBox*)this)->minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_15(Smoke::Stack x) {
        // bool isFlat() const
        bool xret = ((const x_QGroupBox*)this)->QGroupBox::isFlat();
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // void setFlat(bool)
        this->QGroupBox::setFlat((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // bool isCheckable() const
        bool xret = ((const x_QGroupBox*)this)->QGroupBox::isCheckable();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setCheckable(bool)
        this->QGroupBox::setCheckable((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // bool isChecked() const
        bool xret = ((const x_QGroupBox*)this)->QGroupBox::isChecked();
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // void setChecked(bool)
        this->QGroupBox::setChecked((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void clicked(bool)
        this->QGroupBox::clicked((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void toggled(bool)
        this->QGroupBox::toggled((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            bool xret = this->QGroupBox::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 childEvent(QChildEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::childEvent((QChildEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->childEvent((QChildEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // void resizeEvent(QResizeEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::resizeEvent((QResizeEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->resizeEvent((QResizeEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_26(Smoke::Stack x) {
        // void paintEvent(QPaintEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::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_27(Smoke::Stack x) {
        // void focusInEvent(QFocusEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::focusInEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->focusInEvent((QFocusEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_28(Smoke::Stack x) {
        // void changeEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::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_29(Smoke::Stack x) {
        // void mousePressEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_30(Smoke::Stack x) {
        // void mouseMoveEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_31(Smoke::Stack x) {
        // void mouseReleaseEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QGroupBox*>(this))) {
            this->QGroupBox::mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_32(Smoke::Stack x) {
        // void initStyleOption(QStyleOptionGroupBox*) const
        ((const x_QGroupBox*)this)->QGroupBox::initStyleOption((QStyleOptionGroupBox*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_33(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QGroupBox::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_34(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QGroupBox::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_35(Smoke::Stack x) {
        // QGroupBox* QGroupBox()
        x_QGroupBox* xret = new x_QGroupBox((QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_36(Smoke::Stack x) {
        // QGroupBox* QGroupBox(const QString&)
        x_QGroupBox* xret = new x_QGroupBox(*(const QString*)x[1].s_class,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    void x_37(Smoke::Stack x) {
        // void clicked()
        this->QGroupBox::clicked((bool)false);
        (void)x; // noop (for compiler warning)
    }
    static void x_38(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QGroupBox::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5975, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QGroupBox::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5976, (void*)this, x)) return (void*)x[0].s_class;
        return this->QGroupBox::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(5981, (void*)this, x)) return (int)x[0].s_int;
        return this->QGroupBox::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(5988, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QGroupBox::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(6003, (void*)this, x)) return;
        this->QGroupBox::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6005, (void*)this, x)) return;
        this->QGroupBox::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(6004, (void*)this, x)) return;
        this->QGroupBox::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(6001, (void*)this, x)) return;
        this->QGroupBox::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(6000, (void*)this, x)) return;
        this->QGroupBox::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(5999, (void*)this, x)) return;
        this->QGroupBox::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(6002, (void*)this, x)) return;
        this->QGroupBox::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(5997, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QGroupBox::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(5998, (void*)this, x)) return;
        this->QGroupBox::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_QGroupBox() { this->_binding->deleted(168, (void*)this); }
};
void xcall_QGroupBox(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGroupBox *xself = (x_QGroupBox*)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_QGroupBox::x_3(args);	break;
        case 4: x_QGroupBox::x_4(args);	break;
        case 5: x_QGroupBox::x_5(args);	break;
        case 6: x_QGroupBox::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QGroupBox::x_8(args);	break;
        case 9: x_QGroupBox::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: x_QGroupBox::x_33(args);	break;
        case 34: x_QGroupBox::x_34(args);	break;
        case 35: x_QGroupBox::x_35(args);	break;
        case 36: x_QGroupBox::x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: x_QGroupBox::x_38(args);	break;
        case 39: delete (QGroupBox*)xself;	break;
    }
}
class x_QHBoxLayout : public QHBoxLayout, 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<QHBoxLayout*>(this))) {
            const QMetaObject* xret = ((const x_QHBoxLayout*)this)->QHBoxLayout::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QHBoxLayout*)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<QHBoxLayout*>(this))) {
            void* xret = this->QHBoxLayout::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 = QHBoxLayout::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 = QHBoxLayout::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 = QHBoxLayout::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 = QHBoxLayout::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<QHBoxLayout*>(this))) {
            int xret = this->QHBoxLayout::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) {
        // QHBoxLayout* QHBoxLayout()
        x_QHBoxLayout* xret = new x_QHBoxLayout();
        x[0].s_class = (void*)xret;
    }
    explicit x_QHBoxLayout() : QHBoxLayout() {}
    static void x_9(Smoke::Stack x) {
        // QHBoxLayout* QHBoxLayout(QWidget*)
        x_QHBoxLayout* xret = new x_QHBoxLayout((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHBoxLayout(QWidget* x1) : QHBoxLayout(x1) {}
    static void x_10(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QHBoxLayout::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_11(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QHBoxLayout::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_12(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QHBoxLayout::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6014, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QHBoxLayout::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6015, (void*)this, x)) return (void*)x[0].s_class;
        return this->QHBoxLayout::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(6020, (void*)this, x)) return (int)x[0].s_int;
        return this->QHBoxLayout::qt_metacall(x1, x2, x3);
    }
    virtual void addItem(QLayoutItem* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1509, (void*)this, x)) return;
        this->QBoxLayout::addItem(x1);
    }
    virtual void setGeometry(const QRect& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1532, (void*)this, x)) return;
        this->QBoxLayout::setGeometry(x1);
    }
    virtual QLayoutItem* itemAt(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1529, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QBoxLayout::itemAt(x1);
    }
    virtual QLayoutItem* takeAt(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1530, (void*)this, x)) return (QLayoutItem*)x[0].s_class;
        return this->QBoxLayout::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(1531, (void*)this, x)) return (int)x[0].s_int;
        return this->QBoxLayout::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(1521, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QBoxLayout::sizeHint();
    }
    virtual QSize minimumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1522, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QBoxLayout::minimumSize();
    }
    virtual QSize maximumSize() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1523, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QBoxLayout::maximumSize();
    }
    virtual QFlags<Qt::Orientation> expandingDirections() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1527, (void*)this, x)) return (QFlags<Qt::Orientation>)x[0].s_uint;
        return this->QBoxLayout::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(1524, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QBoxLayout::hasHeightForWidth();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1525, (void*)this, x)) return (int)x[0].s_int;
        return this->QBoxLayout::heightForWidth(x1);
    }
    virtual int minimumHeightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1526, (void*)this, x)) return (int)x[0].s_int;
        return this->QBoxLayout::minimumHeightForWidth(x1);
    }
    virtual void invalidate() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1528, (void*)this, x)) return;
        this->QBoxLayout::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();
    }
    ~x_QHBoxLayout() { this->_binding->deleted(169, (void*)this); }
};
void xcall_QHBoxLayout(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QHBoxLayout *xself = (x_QHBoxLayout*)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_QHBoxLayout::x_3(args);	break;
        case 4: x_QHBoxLayout::x_4(args);	break;
        case 5: x_QHBoxLayout::x_5(args);	break;
        case 6: x_QHBoxLayout::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QHBoxLayout::x_8(args);	break;
        case 9: x_QHBoxLayout::x_9(args);	break;
        case 10: x_QHBoxLayout::x_10(args);	break;
        case 11: x_QHBoxLayout::x_11(args);	break;
        case 12: x_QHBoxLayout::x_12(args);	break;
        case 13: delete (QHBoxLayout*)xself;	break;
    }
}
class x_QHeaderView : public QHeaderView, 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<QHeaderView*>(this))) {
            const QMetaObject* xret = ((const x_QHeaderView*)this)->QHeaderView::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QHeaderView*)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<QHeaderView*>(this))) {
            void* xret = this->QHeaderView::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 = QHeaderView::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 = QHeaderView::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 = QHeaderView::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 = QHeaderView::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<QHeaderView*>(this))) {
            int xret = this->QHeaderView::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) {
        // QHeaderView* QHeaderView(Qt::Orientation, QWidget*)
        x_QHeaderView* xret = new x_QHeaderView((Qt::Orientation)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHeaderView(Qt::Orientation x1, QWidget* x2) : QHeaderView(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // void setModel(QAbstractItemModel*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::setModel((QAbstractItemModel*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setModel((QAbstractItemModel*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_10(Smoke::Stack x) {
        // Qt::Orientation orientation() const
        Qt::Orientation xret = ((const x_QHeaderView*)this)->QHeaderView::orientation();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // int offset() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::offset();
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // int length() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::length();
        x[0].s_int = xret;
    }
    void x_13(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QSize xret = ((const x_QHeaderView*)this)->QHeaderView::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QHeaderView*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_14(Smoke::Stack x) {
        // int sectionSizeHint(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::sectionSizeHint((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // int visualIndexAt(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::visualIndexAt((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // int logicalIndexAt(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::logicalIndexAt((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_17(Smoke::Stack x) {
        // int logicalIndexAt(int, int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::logicalIndexAt((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_18(Smoke::Stack x) {
        // int logicalIndexAt(const QPoint&) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::logicalIndexAt(*(const QPoint*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // int sectionSize(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::sectionSize((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // int sectionPosition(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::sectionPosition((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // int sectionViewportPosition(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::sectionViewportPosition((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // void moveSection(int, int)
        this->QHeaderView::moveSection((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void swapSections(int, int)
        this->QHeaderView::swapSections((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void resizeSection(int, int)
        this->QHeaderView::resizeSection((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void resizeSections(QHeaderView::ResizeMode)
        this->QHeaderView::resizeSections((QHeaderView::ResizeMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // bool isSectionHidden(int) const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::isSectionHidden((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_27(Smoke::Stack x) {
        // void setSectionHidden(int, bool)
        this->QHeaderView::setSectionHidden((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // int hiddenSectionCount() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::hiddenSectionCount();
        x[0].s_int = xret;
    }
    void x_29(Smoke::Stack x) {
        // void hideSection(int)
        this->QHeaderView::hideSection((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // void showSection(int)
        this->QHeaderView::showSection((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::count();
        x[0].s_int = xret;
    }
    void x_32(Smoke::Stack x) {
        // int visualIndex(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::visualIndex((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_33(Smoke::Stack x) {
        // int logicalIndex(int) const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::logicalIndex((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_34(Smoke::Stack x) {
        // void setMovable(bool)
        this->QHeaderView::setMovable((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_35(Smoke::Stack x) {
        // bool isMovable() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::isMovable();
        x[0].s_bool = xret;
    }
    void x_36(Smoke::Stack x) {
        // void setClickable(bool)
        this->QHeaderView::setClickable((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // bool isClickable() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::isClickable();
        x[0].s_bool = xret;
    }
    void x_38(Smoke::Stack x) {
        // void setHighlightSections(bool)
        this->QHeaderView::setHighlightSections((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_39(Smoke::Stack x) {
        // bool highlightSections() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::highlightSections();
        x[0].s_bool = xret;
    }
    void x_40(Smoke::Stack x) {
        // void setResizeMode(QHeaderView::ResizeMode)
        this->QHeaderView::setResizeMode((QHeaderView::ResizeMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // void setResizeMode(int, QHeaderView::ResizeMode)
        this->QHeaderView::setResizeMode((int)x[1].s_int,(QHeaderView::ResizeMode)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // QHeaderView::ResizeMode resizeMode(int) const
        QHeaderView::ResizeMode xret = ((const x_QHeaderView*)this)->QHeaderView::resizeMode((int)x[1].s_int);
        x[0].s_enum = xret;
    }
    void x_43(Smoke::Stack x) {
        // int stretchSectionCount() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::stretchSectionCount();
        x[0].s_int = xret;
    }
    void x_44(Smoke::Stack x) {
        // void setSortIndicatorShown(bool)
        this->QHeaderView::setSortIndicatorShown((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_45(Smoke::Stack x) {
        // bool isSortIndicatorShown() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::isSortIndicatorShown();
        x[0].s_bool = xret;
    }
    void x_46(Smoke::Stack x) {
        // void setSortIndicator(int, Qt::SortOrder)
        this->QHeaderView::setSortIndicator((int)x[1].s_int,(Qt::SortOrder)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_47(Smoke::Stack x) {
        // int sortIndicatorSection() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::sortIndicatorSection();
        x[0].s_int = xret;
    }
    void x_48(Smoke::Stack x) {
        // Qt::SortOrder sortIndicatorOrder() const
        Qt::SortOrder xret = ((const x_QHeaderView*)this)->QHeaderView::sortIndicatorOrder();
        x[0].s_enum = xret;
    }
    void x_49(Smoke::Stack x) {
        // bool stretchLastSection() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::stretchLastSection();
        x[0].s_bool = xret;
    }
    void x_50(Smoke::Stack x) {
        // void setStretchLastSection(bool)
        this->QHeaderView::setStretchLastSection((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_51(Smoke::Stack x) {
        // bool cascadingSectionResizes() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::cascadingSectionResizes();
        x[0].s_bool = xret;
    }
    void x_52(Smoke::Stack x) {
        // void setCascadingSectionResizes(bool)
        this->QHeaderView::setCascadingSectionResizes((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_53(Smoke::Stack x) {
        // int defaultSectionSize() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::defaultSectionSize();
        x[0].s_int = xret;
    }
    void x_54(Smoke::Stack x) {
        // void setDefaultSectionSize(int)
        this->QHeaderView::setDefaultSectionSize((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_55(Smoke::Stack x) {
        // int minimumSectionSize() const
        int xret = ((const x_QHeaderView*)this)->QHeaderView::minimumSectionSize();
        x[0].s_int = xret;
    }
    void x_56(Smoke::Stack x) {
        // void setMinimumSectionSize(int)
        this->QHeaderView::setMinimumSectionSize((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_57(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> defaultAlignment() const
        QFlags<Qt::AlignmentFlag> xret = ((const x_QHeaderView*)this)->QHeaderView::defaultAlignment();
        x[0].s_uint = (uint)xret;
    }
    void x_58(Smoke::Stack x) {
        // void setDefaultAlignment(QFlags<Qt::AlignmentFlag>)
        this->QHeaderView::setDefaultAlignment((QFlags<Qt::AlignmentFlag>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_59(Smoke::Stack x) {
        // void doItemsLayout()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::doItemsLayout();
            (void)x; // noop (for compiler warning)
        } else {
            this->doItemsLayout();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_60(Smoke::Stack x) {
        // bool sectionsMoved() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::sectionsMoved();
        x[0].s_bool = xret;
    }
    void x_61(Smoke::Stack x) {
        // bool sectionsHidden() const
        bool xret = ((const x_QHeaderView*)this)->QHeaderView::sectionsHidden();
        x[0].s_bool = xret;
    }
    void x_62(Smoke::Stack x) {
        // QByteArray saveState() const
        QByteArray xret = ((const x_QHeaderView*)this)->QHeaderView::saveState();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_63(Smoke::Stack x) {
        // bool restoreState(const QByteArray&)
        bool xret = this->QHeaderView::restoreState(*(const QByteArray*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_64(Smoke::Stack x) {
        // void reset()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::reset();
            (void)x; // noop (for compiler warning)
        } else {
            this->reset();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_65(Smoke::Stack x) {
        // void setOffset(int)
        this->QHeaderView::setOffset((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_66(Smoke::Stack x) {
        // void setOffsetToSectionPosition(int)
        this->QHeaderView::setOffsetToSectionPosition((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_67(Smoke::Stack x) {
        // void setOffsetToLastSection()
        this->QHeaderView::setOffsetToLastSection();
        (void)x; // noop (for compiler warning)
    }
    void x_68(Smoke::Stack x) {
        // void headerDataChanged(Qt::Orientation, int, int)
        this->QHeaderView::headerDataChanged((Qt::Orientation)x[1].s_enum,(int)x[2].s_int,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_69(Smoke::Stack x) {
        // void sectionMoved(int, int, int)
        this->QHeaderView::sectionMoved((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_70(Smoke::Stack x) {
        // void sectionResized(int, int, int)
        this->QHeaderView::sectionResized((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_71(Smoke::Stack x) {
        // void sectionPressed(int)
        this->QHeaderView::sectionPressed((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_72(Smoke::Stack x) {
        // void sectionClicked(int)
        this->QHeaderView::sectionClicked((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_73(Smoke::Stack x) {
        // void sectionEntered(int)
        this->QHeaderView::sectionEntered((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_74(Smoke::Stack x) {
        // void sectionDoubleClicked(int)
        this->QHeaderView::sectionDoubleClicked((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_75(Smoke::Stack x) {
        // void sectionCountChanged(int, int)
        this->QHeaderView::sectionCountChanged((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_76(Smoke::Stack x) {
        // void sectionHandleDoubleClicked(int)
        this->QHeaderView::sectionHandleDoubleClicked((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_77(Smoke::Stack x) {
        // void sectionAutoResize(int, QHeaderView::ResizeMode)
        this->QHeaderView::sectionAutoResize((int)x[1].s_int,(QHeaderView::ResizeMode)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_78(Smoke::Stack x) {
        // void geometriesChanged()
        this->QHeaderView::geometriesChanged();
        (void)x; // noop (for compiler warning)
    }
    void x_79(Smoke::Stack x) {
        // void sortIndicatorChanged(int, Qt::SortOrder)
        this->QHeaderView::sortIndicatorChanged((int)x[1].s_int,(Qt::SortOrder)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_80(Smoke::Stack x) {
        // void updateSection(int)
        this->QHeaderView::updateSection((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_81(Smoke::Stack x) {
        // void resizeSections()
        this->QHeaderView::resizeSections();
        (void)x; // noop (for compiler warning)
    }
    void x_82(Smoke::Stack x) {
        // void sectionsInserted(const QModelIndex&, int, int)
        this->QHeaderView::sectionsInserted(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_83(Smoke::Stack x) {
        // void sectionsAboutToBeRemoved(const QModelIndex&, int, int)
        this->QHeaderView::sectionsAboutToBeRemoved(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_84(Smoke::Stack x) {
        // void initialize()
        this->QHeaderView::initialize();
        (void)x; // noop (for compiler warning)
    }
    void x_85(Smoke::Stack x) {
        // void initializeSections()
        this->QHeaderView::initializeSections();
        (void)x; // noop (for compiler warning)
    }
    void x_86(Smoke::Stack x) {
        // void initializeSections(int, int)
        this->QHeaderView::initializeSections((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_87(Smoke::Stack x) {
        // void currentChanged(const QModelIndex&, const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::currentChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->currentChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_88(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            bool xret = this->QHeaderView::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_89(Smoke::Stack x) {
        // void paintEvent(QPaintEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::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_90(Smoke::Stack x) {
        // void mousePressEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_91(Smoke::Stack x) {
        // void mouseMoveEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_92(Smoke::Stack x) {
        // void mouseReleaseEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_93(Smoke::Stack x) {
        // void mouseDoubleClickEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::mouseDoubleClickEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseDoubleClickEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_94(Smoke::Stack x) {
        // bool viewportEvent(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            bool xret = this->QHeaderView::viewportEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->viewportEvent((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_95(Smoke::Stack x) {
        // virtual void paintSection(QPainter*, const QRect&, int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            ((const x_QHeaderView*)this)->QHeaderView::paintSection((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QHeaderView*)this)->paintSection((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_96(Smoke::Stack x) {
        // virtual QSize sectionSizeFromContents(int) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QSize xret = ((const x_QHeaderView*)this)->QHeaderView::sectionSizeFromContents((int)x[1].s_int);
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QHeaderView*)this)->sectionSizeFromContents((int)x[1].s_int);
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_97(Smoke::Stack x) {
        // int horizontalOffset() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            int xret = ((const x_QHeaderView*)this)->QHeaderView::horizontalOffset();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QHeaderView*)this)->horizontalOffset();
            x[0].s_int = xret;
        }
    }
    void x_98(Smoke::Stack x) {
        // int verticalOffset() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            int xret = ((const x_QHeaderView*)this)->QHeaderView::verticalOffset();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QHeaderView*)this)->verticalOffset();
            x[0].s_int = xret;
        }
    }
    void x_99(Smoke::Stack x) {
        // void updateGeometries()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::updateGeometries();
            (void)x; // noop (for compiler warning)
        } else {
            this->updateGeometries();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_100(Smoke::Stack x) {
        // void scrollContentsBy(int, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::scrollContentsBy((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->scrollContentsBy((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_101(Smoke::Stack x) {
        // void dataChanged(const QModelIndex&, const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::dataChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->dataChanged(*(const QModelIndex*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_102(Smoke::Stack x) {
        // void rowsInserted(const QModelIndex&, int, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::rowsInserted(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->rowsInserted(*(const QModelIndex*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_103(Smoke::Stack x) {
        // QRect visualRect(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QRect xret = ((const x_QHeaderView*)this)->QHeaderView::visualRect(*(const QModelIndex*)x[1].s_class);
            x[0].s_class = (void*)new QRect(xret);
        } else {
            QRect xret = ((const x_QHeaderView*)this)->visualRect(*(const QModelIndex*)x[1].s_class);
            x[0].s_class = (void*)new QRect(xret);
        }
    }
    void x_104(Smoke::Stack x) {
        // void scrollTo(const QModelIndex&, QAbstractItemView::ScrollHint)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::scrollTo(*(const QModelIndex*)x[1].s_class,(QAbstractItemView::ScrollHint)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->scrollTo(*(const QModelIndex*)x[1].s_class,(QAbstractItemView::ScrollHint)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_105(Smoke::Stack x) {
        // QModelIndex indexAt(const QPoint&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QModelIndex xret = ((const x_QHeaderView*)this)->QHeaderView::indexAt(*(const QPoint*)x[1].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        } else {
            QModelIndex xret = ((const x_QHeaderView*)this)->indexAt(*(const QPoint*)x[1].s_class);
            x[0].s_class = (void*)new QModelIndex(xret);
        }
    }
    void x_106(Smoke::Stack x) {
        // bool isIndexHidden(const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            bool xret = ((const x_QHeaderView*)this)->QHeaderView::isIndexHidden(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QHeaderView*)this)->isIndexHidden(*(const QModelIndex*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_107(Smoke::Stack x) {
        // QModelIndex moveCursor(QAbstractItemView::CursorAction, QFlags<Qt::KeyboardModifier>)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QModelIndex xret = this->QHeaderView::moveCursor((QAbstractItemView::CursorAction)x[1].s_enum,(QFlags<Qt::KeyboardModifier>)x[2].s_uint);
            x[0].s_class = (void*)new QModelIndex(xret);
        } else {
            QModelIndex xret = this->moveCursor((QAbstractItemView::CursorAction)x[1].s_enum,(QFlags<Qt::KeyboardModifier>)x[2].s_uint);
            x[0].s_class = (void*)new QModelIndex(xret);
        }
    }
    void x_108(Smoke::Stack x) {
        // void setSelection(const QRect&, QFlags<QItemSelectionModel::SelectionFlag>)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            this->QHeaderView::setSelection(*(const QRect*)x[1].s_class,(QFlags<QItemSelectionModel::SelectionFlag>)x[2].s_uint);
            (void)x; // noop (for compiler warning)
        } else {
            this->setSelection(*(const QRect*)x[1].s_class,(QFlags<QItemSelectionModel::SelectionFlag>)x[2].s_uint);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_109(Smoke::Stack x) {
        // QRegion visualRegionForSelection(const QItemSelection&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QHeaderView*>(this))) {
            QRegion xret = ((const x_QHeaderView*)this)->QHeaderView::visualRegionForSelection(*(const QItemSelection*)x[1].s_class);
            x[0].s_class = (void*)new QRegion(xret);
        } else {
            QRegion xret = ((const x_QHeaderView*)this)->visualRegionForSelection(*(const QItemSelection*)x[1].s_class);
            x[0].s_class = (void*)new QRegion(xret);
        }
    }
    void x_110(Smoke::Stack x) {
        // void initStyleOption(QStyleOptionHeader*) const
        ((const x_QHeaderView*)this)->QHeaderView::initStyleOption((QStyleOptionHeader*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_111(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QHeaderView::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_112(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QHeaderView::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_113(Smoke::Stack x) {
        // QHeaderView* QHeaderView(Qt::Orientation)
        x_QHeaderView* xret = new x_QHeaderView((Qt::Orientation)x[1].s_enum,(QWidget*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_114(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QHeaderView::staticMetaObject;
    }
    static void x_115(Smoke::Stack x) {
        x[0].s_enum = (long)QHeaderView::Interactive;
    }
    static void x_116(Smoke::Stack x) {
        x[0].s_enum = (long)QHeaderView::Stretch;
    }
    static void x_117(Smoke::Stack x) {
        x[0].s_enum = (long)QHeaderView::Fixed;
    }
    static void x_118(Smoke::Stack x) {
        x[0].s_enum = (long)QHeaderView::ResizeToContents;
    }
    static void x_119(Smoke::Stack x) {
        x[0].s_enum = (long)QHeaderView::Custom;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6027, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QHeaderView::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6028, (void*)this, x)) return (void*)x[0].s_class;
        return this->QHeaderView::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(6033, (void*)this, x)) return (int)x[0].s_int;
        return this->QHeaderView::qt_metacall(x1, x2, x3);
    }
    virtual void paintSection(QPainter* x1, const QRect& x2, int x3) const {
        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(6121, (void*)this, x)) return;
        this->QHeaderView::paintSection(x1, x2, x3);
    }
    virtual QSize sectionSizeFromContents(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(6122, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::sectionSizeFromContents(x1);
    }
    virtual void setModel(QAbstractItemModel* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6035, (void*)this, x)) return;
        this->QHeaderView::setModel(x1);
    }
    virtual void setSelectionModel(QItemSelectionModel* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(133, (void*)this, x)) return;
        this->QAbstractItemView::setSelectionModel(x1);
    }
    virtual void keyboardSearch(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(171, (void*)this, x)) return;
        this->QAbstractItemView::keyboardSearch(x1);
    }
    virtual QRect visualRect(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6129, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::visualRect(x1);
    }
    virtual void scrollTo(const QModelIndex& x1, QAbstractItemView::ScrollHint x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(6130, (void*)this, x)) return;
        this->QHeaderView::scrollTo(x1, x2);
    }
    virtual QModelIndex indexAt(const QPoint& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6131, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::indexAt(x1);
    }
    virtual int sizeHintForRow(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(176, (void*)this, x)) return (int)x[0].s_int;
        return this->QAbstractItemView::sizeHintForRow(x1);
    }
    virtual int sizeHintForColumn(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(177, (void*)this, x)) return (int)x[0].s_int;
        return this->QAbstractItemView::sizeHintForColumn(x1);
    }
    virtual QVariant inputMethodQuery(Qt::InputMethodQuery x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(187, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemView::inputMethodQuery(x1);
    }
    virtual void reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6090, (void*)this, x)) return;
        this->QHeaderView::reset();
    }
    virtual void setRootIndex(const QModelIndex& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(189, (void*)this, x)) return;
        this->QAbstractItemView::setRootIndex(x1);
    }
    virtual void doItemsLayout() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6085, (void*)this, x)) return;
        this->QHeaderView::doItemsLayout();
    }
    virtual void selectAll() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(191, (void*)this, x)) return;
        this->QAbstractItemView::selectAll();
    }
    virtual void dataChanged(const QModelIndex& x1, const QModelIndex& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(6127, (void*)this, x)) return;
        this->QHeaderView::dataChanged(x1, x2);
    }
    virtual void rowsInserted(const QModelIndex& x1, int x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(6128, (void*)this, x)) return;
        this->QHeaderView::rowsInserted(x1, x2, x3);
    }
    virtual void rowsAboutToBeRemoved(const QModelIndex& x1, int x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_int = x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(200, (void*)this, x)) return;
        this->QAbstractItemView::rowsAboutToBeRemoved(x1, x2, x3);
    }
    virtual void selectionChanged(const QItemSelection& x1, const QItemSelection& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(201, (void*)this, x)) return;
        this->QAbstractItemView::selectionChanged(x1, x2);
    }
    virtual void currentChanged(const QModelIndex& x1, const QModelIndex& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(6113, (void*)this, x)) return;
        this->QHeaderView::currentChanged(x1, x2);
    }
    virtual void updateEditorData() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(203, (void*)this, x)) return;
        this->QAbstractItemView::updateEditorData();
    }
    virtual void updateEditorGeometries() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(204, (void*)this, x)) return;
        this->QAbstractItemView::updateEditorGeometries();
    }
    virtual void updateGeometries() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6125, (void*)this, x)) return;
        this->QHeaderView::updateGeometries();
    }
    virtual void verticalScrollbarAction(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(206, (void*)this, x)) return;
        this->QAbstractItemView::verticalScrollbarAction(x1);
    }
    virtual void horizontalScrollbarAction(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(207, (void*)this, x)) return;
        this->QAbstractItemView::horizontalScrollbarAction(x1);
    }
    virtual void verticalScrollbarValueChanged(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(208, (void*)this, x)) return;
        this->QAbstractItemView::verticalScrollbarValueChanged(x1);
    }
    virtual void horizontalScrollbarValueChanged(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(209, (void*)this, x)) return;
        this->QAbstractItemView::horizontalScrollbarValueChanged(x1);
    }
    virtual void closeEditor(QWidget* x1, QAbstractItemDelegate::EndEditHint x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(210, (void*)this, x)) return;
        this->QAbstractItemView::closeEditor(x1, x2);
    }
    virtual void commitData(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(211, (void*)this, x)) return;
        this->QAbstractItemView::commitData(x1);
    }
    virtual void editorDestroyed(QObject* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(212, (void*)this, x)) return;
        this->QAbstractItemView::editorDestroyed(x1);
    }
    virtual QModelIndex moveCursor(QAbstractItemView::CursorAction x1, QFlags<Qt::KeyboardModifier> x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_uint = (uint)x2;
        if (this->_binding->callMethod(6133, (void*)this, x)) {
            QModelIndex* xptr = (QModelIndex*)x[0].s_class;
            QModelIndex xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::moveCursor(x1, x2);
    }
    virtual int horizontalOffset() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6123, (void*)this, x)) return (int)x[0].s_int;
        return this->QHeaderView::horizontalOffset();
    }
    virtual int verticalOffset() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6124, (void*)this, x)) return (int)x[0].s_int;
        return this->QHeaderView::verticalOffset();
    }
    virtual bool isIndexHidden(const QModelIndex& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6132, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QHeaderView::isIndexHidden(x1);
    }
    virtual void setSelection(const QRect& x1, QFlags<QItemSelectionModel::SelectionFlag> x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_uint = (uint)x2;
        if (this->_binding->callMethod(6134, (void*)this, x)) return;
        this->QHeaderView::setSelection(x1, x2);
    }
    virtual QRegion visualRegionForSelection(const QItemSelection& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6135, (void*)this, x)) {
            QRegion* xptr = (QRegion*)x[0].s_class;
            QRegion xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::visualRegionForSelection(x1);
    }
    virtual QList<QModelIndex> selectedIndexes() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(229, (void*)this, x)) {
            QList<QModelIndex>* xptr = (QList<QModelIndex>*)x[0].s_class;
            QList<QModelIndex> xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemView::selectedIndexes();
    }
    virtual bool edit(const QModelIndex& x1, QAbstractItemView::EditTrigger x2, QEvent* x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(230, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemView::edit(x1, x2, x3);
    }
    virtual QFlags<QItemSelectionModel::SelectionFlag> selectionCommand(const QModelIndex& x1, const QEvent* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(231, (void*)this, x)) return (QFlags<QItemSelectionModel::SelectionFlag>)x[0].s_uint;
        return this->QAbstractItemView::selectionCommand(x1, x2);
    }
    virtual void startDrag(QFlags<Qt::DropAction> x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = (uint)x1;
        if (this->_binding->callMethod(232, (void*)this, x)) return;
        this->QAbstractItemView::startDrag(x1);
    }
    virtual QStyleOptionViewItem viewOptions() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(233, (void*)this, x)) {
            QStyleOptionViewItem* xptr = (QStyleOptionViewItem*)x[0].s_class;
            QStyleOptionViewItem xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractItemView::viewOptions();
    }
    virtual bool viewportEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6120, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QHeaderView::viewportEvent(x1);
    }
    virtual void scrollContentsBy(int x1, int x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_int = x2;
        if (this->_binding->callMethod(6126, (void*)this, x)) return;
        this->QHeaderView::scrollContentsBy(x1, x2);
    }
    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(6039, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QHeaderView::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(439, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QAbstractScrollArea::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(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(6116, (void*)this, x)) return;
        this->QHeaderView::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6118, (void*)this, x)) return;
        this->QHeaderView::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6119, (void*)this, x)) return;
        this->QHeaderView::mouseDoubleClickEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6117, (void*)this, x)) return;
        this->QHeaderView::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(452, (void*)this, x)) return;
        this->QAbstractScrollArea::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(257, (void*)this, x)) return;
        this->QAbstractItemView::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(255, (void*)this, x)) return;
        this->QAbstractItemView::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(256, (void*)this, x)) return;
        this->QAbstractItemView::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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(6115, (void*)this, x)) return;
        this->QHeaderView::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(258, (void*)this, x)) return;
        this->QAbstractItemView::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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(453, (void*)this, x)) return;
        this->QAbstractScrollArea::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(251, (void*)this, x)) return;
        this->QAbstractItemView::dragEnterEvent(x1);
    }
    virtual void dragMoveEvent(QDragMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(252, (void*)this, x)) return;
        this->QAbstractItemView::dragMoveEvent(x1);
    }
    virtual void dragLeaveEvent(QDragLeaveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(253, (void*)this, x)) return;
        this->QAbstractItemView::dragLeaveEvent(x1);
    }
    virtual void dropEvent(QDropEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(254, (void*)this, x)) return;
        this->QAbstractItemView::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(260, (void*)this, x)) return;
        this->QAbstractItemView::inputMethodEvent(x1);
    }
    virtual bool focusNextPrevChild(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(244, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractItemView::focusNextPrevChild(x1);
    }
    virtual void styleChange(QStyle& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(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(6114, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QHeaderView::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(259, (void*)this, x)) return;
        this->QAbstractItemView::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 380: //QHeaderView::ResizeMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QHeaderView::ResizeMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QHeaderView::ResizeMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QHeaderView::ResizeMode*)xdata = (QHeaderView::ResizeMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QHeaderView::ResizeMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QHeaderView() { this->_binding->deleted(170, (void*)this); }
};
void xenum_QHeaderView(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QHeaderView::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QHeaderView(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QHeaderView *xself = (x_QHeaderView*)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_QHeaderView::x_3(args);	break;
        case 4: x_QHeaderView::x_4(args);	break;
        case 5: x_QHeaderView::x_5(args);	break;
        case 6: x_QHeaderView::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QHeaderView::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: 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: xself->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: xself->x_79(args);	break;
        case 80: xself->x_80(args);	break;
        case 81: xself->x_81(args);	break;
        case 82: xself->x_82(args);	break;
        case 83: xself->x_83(args);	break;
        case 84: xself->x_84(args);	break;
        case 85: xself->x_85(args);	break;
        case 86: xself->x_86(args);	break;
        case 87: xself->x_87(args);	break;
        case 88: xself->x_88(args);	break;
        case 89: xself->x_89(args);	break;
        case 90: xself->x_90(args);	break;
        case 91: xself->x_91(args);	break;
        case 92: xself->x_92(args);	break;
        case 93: xself->x_93(args);	break;
        case 94: xself->x_94(args);	break;
        case 95: xself->x_95(args);	break;
        case 96: xself->x_96(args);	break;
        case 97: xself->x_97(args);	break;
        case 98: xself->x_98(args);	break;
        case 99: xself->x_99(args);	break;
        case 100: xself->x_100(args);	break;
        case 101: xself->x_101(args);	break;
        case 102: xself->x_102(args);	break;
        case 103: xself->x_103(args);	break;
        case 104: xself->x_104(args);	break;
        case 105: xself->x_105(args);	break;
        case 106: xself->x_106(args);	break;
        case 107: xself->x_107(args);	break;
        case 108: xself->x_108(args);	break;
        case 109: xself->x_109(args);	break;
        case 110: xself->x_110(args);	break;
        case 111: x_QHeaderView::x_111(args);	break;
        case 112: x_QHeaderView::x_112(args);	break;
        case 113: x_QHeaderView::x_113(args);	break;
        case 114: x_QHeaderView::x_114(args);	break;
        case 115: x_QHeaderView::x_115(args);	break;
        case 116: x_QHeaderView::x_116(args);	break;
        case 117: x_QHeaderView::x_117(args);	break;
        case 118: x_QHeaderView::x_118(args);	break;
        case 119: x_QHeaderView::x_119(args);	break;
        case 120: delete (QHeaderView*)xself;	break;
    }
}
class x_QHelpEvent : public QHelpEvent, 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) {
        // QHelpEvent* QHelpEvent(QEvent::Type, const QPoint&, const QPoint&)
        x_QHelpEvent* xret = new x_QHelpEvent((QEvent::Type)x[1].s_enum,*(const QPoint*)x[2].s_class,*(const QPoint*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHelpEvent(QEvent::Type x1, const QPoint& x2, const QPoint& x3) : QHelpEvent(x1, x2, x3) {}
    void x_2(Smoke::Stack x) {
        // int x() const
        int xret = ((const x_QHelpEvent*)this)->QHelpEvent::x();
        x[0].s_int = xret;
    }
    void x_3(Smoke::Stack x) {
        // int y() const
        int xret = ((const x_QHelpEvent*)this)->QHelpEvent::y();
        x[0].s_int = xret;
    }
    void x_4(Smoke::Stack x) {
        // int globalX() const
        int xret = ((const x_QHelpEvent*)this)->QHelpEvent::globalX();
        x[0].s_int = xret;
    }
    void x_5(Smoke::Stack x) {
        // int globalY() const
        int xret = ((const x_QHelpEvent*)this)->QHelpEvent::globalY();
        x[0].s_int = xret;
    }
    void x_6(Smoke::Stack x) {
        // const QPoint& pos() const
        const QPoint& xret = ((const x_QHelpEvent*)this)->QHelpEvent::pos();
        x[0].s_class = (void*)&xret;
    }
    void x_7(Smoke::Stack x) {
        // const QPoint& globalPos() const
        const QPoint& xret = ((const x_QHelpEvent*)this)->QHelpEvent::globalPos();
        x[0].s_class = (void*)&xret;
    }
    static void x_8(Smoke::Stack x) {
        // QHelpEvent* QHelpEvent(const QHelpEvent&)
        x_QHelpEvent* xret = new x_QHelpEvent(*(const QHelpEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHelpEvent(const QHelpEvent& x1) : QHelpEvent(x1) {}
    ~x_QHelpEvent() { this->_binding->deleted(171, (void*)this); }
};
void xcall_QHelpEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QHelpEvent *xself = (x_QHelpEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QHelpEvent::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: x_QHelpEvent::x_8(args);	break;
        case 9: delete (QHelpEvent*)xself;	break;
    }
}
class x_QHideEvent : public QHideEvent, 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) {
        // QHideEvent* QHideEvent()
        x_QHideEvent* xret = new x_QHideEvent();
        x[0].s_class = (void*)xret;
    }
    explicit x_QHideEvent() : QHideEvent() {}
    static void x_2(Smoke::Stack x) {
        // QHideEvent* QHideEvent(const QHideEvent&)
        x_QHideEvent* xret = new x_QHideEvent(*(const QHideEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHideEvent(const QHideEvent& x1) : QHideEvent(x1) {}
    ~x_QHideEvent() { this->_binding->deleted(172, (void*)this); }
};
void xcall_QHideEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QHideEvent *xself = (x_QHideEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QHideEvent::x_1(args);	break;
        case 2: x_QHideEvent::x_2(args);	break;
        case 3: delete (QHideEvent*)xself;	break;
    }
}
class x_QHoverEvent : public QHoverEvent, 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) {
        // QHoverEvent* QHoverEvent(QEvent::Type, const QPoint&, const QPoint&)
        x_QHoverEvent* xret = new x_QHoverEvent((QEvent::Type)x[1].s_enum,*(const QPoint*)x[2].s_class,*(const QPoint*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHoverEvent(QEvent::Type x1, const QPoint& x2, const QPoint& x3) : QHoverEvent(x1, x2, x3) {}
    void x_2(Smoke::Stack x) {
        // const QPoint& pos() const
        const QPoint& xret = ((const x_QHoverEvent*)this)->QHoverEvent::pos();
        x[0].s_class = (void*)&xret;
    }
    void x_3(Smoke::Stack x) {
        // const QPoint& oldPos() const
        const QPoint& xret = ((const x_QHoverEvent*)this)->QHoverEvent::oldPos();
        x[0].s_class = (void*)&xret;
    }
    static void x_4(Smoke::Stack x) {
        // QHoverEvent* QHoverEvent(const QHoverEvent&)
        x_QHoverEvent* xret = new x_QHoverEvent(*(const QHoverEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QHoverEvent(const QHoverEvent& x1) : QHoverEvent(x1) {}
    void x_5(Smoke::Stack x) {
        // QPoint p
        x[0].s_class = (void*)&this->QHoverEvent::p;
    }
    void x_6(Smoke::Stack x) {
        // QPoint p=
        this->QHoverEvent::p = *(const QPoint*)x[1].s_class;
    }
    void x_7(Smoke::Stack x) {
        // QPoint op
        x[0].s_class = (void*)&this->QHoverEvent::op;
    }
    void x_8(Smoke::Stack x) {
        // QPoint op=
        this->QHoverEvent::op = *(const QPoint*)x[1].s_class;
    }
    ~x_QHoverEvent() { this->_binding->deleted(173, (void*)this); }
};
void xcall_QHoverEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QHoverEvent *xself = (x_QHoverEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QHoverEvent::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: x_QHoverEvent::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: delete (QHoverEvent*)xself;	break;
    }
}
class x_QIcon : public QIcon {
    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) {
        // QIcon* QIcon()
        x_QIcon* xret = new x_QIcon();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon() : QIcon() {}
    static void x_2(Smoke::Stack x) {
        // QIcon* QIcon(const QPixmap&)
        x_QIcon* xret = new x_QIcon(*(const QPixmap*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon(const QPixmap& x1) : QIcon(x1) {}
    static void x_3(Smoke::Stack x) {
        // QIcon* QIcon(const QIcon&)
        x_QIcon* xret = new x_QIcon(*(const QIcon*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon(const QIcon& x1) : QIcon(x1) {}
    static void x_4(Smoke::Stack x) {
        // QIcon* QIcon(const QString&)
        x_QIcon* xret = new x_QIcon(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon(const QString& x1) : QIcon(x1) {}
    static void x_5(Smoke::Stack x) {
        // QIcon* QIcon(QIconEngine*)
        x_QIcon* xret = new x_QIcon((QIconEngine*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon(QIconEngine* x1) : QIcon(x1) {}
    static void x_6(Smoke::Stack x) {
        // QIcon* QIcon(QIconEngineV2*)
        x_QIcon* xret = new x_QIcon((QIconEngineV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIcon(QIconEngineV2* x1) : QIcon(x1) {}
    void x_7(Smoke::Stack x) {
        // QIcon& operator=(const QIcon&)
        QIcon& xret = this->QIcon::operator=(*(const QIcon*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_8(Smoke::Stack x) {
        // void swap(QIcon&)
        this->QIcon::swap(*(QIcon*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // QVariant operator QVariant() const
        QVariant xret = ((const x_QIcon*)this)->QIcon::operator QVariant();
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_10(Smoke::Stack x) {
        // QPixmap pixmap(const QSize&, QIcon::Mode, QIcon::State) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_11(Smoke::Stack x) {
        // QPixmap pixmap(int, int, QIcon::Mode, QIcon::State) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(int)x[2].s_int,(QIcon::Mode)x[3].s_enum,(QIcon::State)x[4].s_enum);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_12(Smoke::Stack x) {
        // QPixmap pixmap(int, QIcon::Mode, QIcon::State) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_13(Smoke::Stack x) {
        // QSize actualSize(const QSize&, QIcon::Mode, QIcon::State) const
        QSize xret = ((const x_QIcon*)this)->QIcon::actualSize(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_14(Smoke::Stack x) {
        // QString name() const
        QString xret = ((const x_QIcon*)this)->QIcon::name();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_15(Smoke::Stack x) {
        // void paint(QPainter*, const QRect&, QFlags<Qt::AlignmentFlag>, QIcon::Mode, QIcon::State) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(QFlags<Qt::AlignmentFlag>)x[3].s_uint,(QIcon::Mode)x[4].s_enum,(QIcon::State)x[5].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void paint(QPainter*, int, int, int, int, QFlags<Qt::AlignmentFlag>, QIcon::Mode, QIcon::State) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint,(QIcon::Mode)x[7].s_enum,(QIcon::State)x[8].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // bool isNull() const
        bool xret = ((const x_QIcon*)this)->QIcon::isNull();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // bool isDetached() const
        bool xret = ((const x_QIcon*)this)->QIcon::isDetached();
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // void detach()
        this->QIcon::detach();
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // int serialNumber() const
        int xret = ((const x_QIcon*)this)->QIcon::serialNumber();
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // long long cacheKey() const
        long long xret = ((const x_QIcon*)this)->QIcon::cacheKey();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_22(Smoke::Stack x) {
        // void addPixmap(const QPixmap&, QIcon::Mode, QIcon::State)
        this->QIcon::addPixmap(*(const QPixmap*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void addFile(const QString&, const QSize&, QIcon::Mode, QIcon::State)
        this->QIcon::addFile(*(const QString*)x[1].s_class,*(const QSize*)x[2].s_class,(QIcon::Mode)x[3].s_enum,(QIcon::State)x[4].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // QList<QSize> availableSizes(QIcon::Mode, QIcon::State) const
        QList<QSize> xret = ((const x_QIcon*)this)->QIcon::availableSizes((QIcon::Mode)x[1].s_enum,(QIcon::State)x[2].s_enum);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    static void x_25(Smoke::Stack x) {
        // static QIcon fromTheme(const QString&, const QIcon&)
        QIcon xret = QIcon::fromTheme(*(const QString*)x[1].s_class,*(const QIcon*)x[2].s_class);
        x[0].s_class = (void*)new QIcon(xret);
    }
    static void x_26(Smoke::Stack x) {
        // static bool hasThemeIcon(const QString&)
        bool xret = QIcon::hasThemeIcon(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    static void x_27(Smoke::Stack x) {
        // static QStringList themeSearchPaths()
        QStringList xret = QIcon::themeSearchPaths();
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_28(Smoke::Stack x) {
        // static void setThemeSearchPaths(const QStringList&)
        QIcon::setThemeSearchPaths(*(const QStringList*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_29(Smoke::Stack x) {
        // static QString themeName()
        QString xret = QIcon::themeName();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_30(Smoke::Stack x) {
        // static void setThemeName(const QString&)
        QIcon::setThemeName(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // QIconPrivate*& data_ptr()
        QIconPrivate*& xret = this->QIcon::data_ptr();
        x[0].s_class = (void*)xret;
    }
    void x_32(Smoke::Stack x) {
        // QPixmap pixmap(const QSize&) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap(*(const QSize*)x[1].s_class,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_33(Smoke::Stack x) {
        // QPixmap pixmap(const QSize&, QIcon::Mode) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_34(Smoke::Stack x) {
        // QPixmap pixmap(int, int) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(int)x[2].s_int,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_35(Smoke::Stack x) {
        // QPixmap pixmap(int, int, QIcon::Mode) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(int)x[2].s_int,(QIcon::Mode)x[3].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_36(Smoke::Stack x) {
        // QPixmap pixmap(int) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_37(Smoke::Stack x) {
        // QPixmap pixmap(int, QIcon::Mode) const
        QPixmap xret = ((const x_QIcon*)this)->QIcon::pixmap((int)x[1].s_int,(QIcon::Mode)x[2].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_38(Smoke::Stack x) {
        // QSize actualSize(const QSize&) const
        QSize xret = ((const x_QIcon*)this)->QIcon::actualSize(*(const QSize*)x[1].s_class,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_39(Smoke::Stack x) {
        // QSize actualSize(const QSize&, QIcon::Mode) const
        QSize xret = ((const x_QIcon*)this)->QIcon::actualSize(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_40(Smoke::Stack x) {
        // void paint(QPainter*, const QRect&) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(QFlags<Qt::AlignmentFlag>)Qt::AlignCenter,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_41(Smoke::Stack x) {
        // void paint(QPainter*, const QRect&, QFlags<Qt::AlignmentFlag>) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(QFlags<Qt::AlignmentFlag>)x[3].s_uint,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_42(Smoke::Stack x) {
        // void paint(QPainter*, const QRect&, QFlags<Qt::AlignmentFlag>, QIcon::Mode) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(QFlags<Qt::AlignmentFlag>)x[3].s_uint,(QIcon::Mode)x[4].s_enum,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_43(Smoke::Stack x) {
        // void paint(QPainter*, int, int, int, int) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)Qt::AlignCenter,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // void paint(QPainter*, int, int, int, int, QFlags<Qt::AlignmentFlag>) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_45(Smoke::Stack x) {
        // void paint(QPainter*, int, int, int, int, QFlags<Qt::AlignmentFlag>, QIcon::Mode) const
        ((const x_QIcon*)this)->QIcon::paint((QPainter*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(int)x[5].s_int,(QFlags<Qt::AlignmentFlag>)x[6].s_uint,(QIcon::Mode)x[7].s_enum,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_46(Smoke::Stack x) {
        // void addPixmap(const QPixmap&)
        this->QIcon::addPixmap(*(const QPixmap*)x[1].s_class,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_47(Smoke::Stack x) {
        // void addPixmap(const QPixmap&, QIcon::Mode)
        this->QIcon::addPixmap(*(const QPixmap*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // void addFile(const QString&)
        this->QIcon::addFile(*(const QString*)x[1].s_class,(const QSize&)QSize(),(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_49(Smoke::Stack x) {
        // void addFile(const QString&, const QSize&)
        this->QIcon::addFile(*(const QString*)x[1].s_class,*(const QSize*)x[2].s_class,(QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_50(Smoke::Stack x) {
        // void addFile(const QString&, const QSize&, QIcon::Mode)
        this->QIcon::addFile(*(const QString*)x[1].s_class,*(const QSize*)x[2].s_class,(QIcon::Mode)x[3].s_enum,(QIcon::State)QIcon::Off);
        (void)x; // noop (for compiler warning)
    }
    void x_51(Smoke::Stack x) {
        // QList<QSize> availableSizes() const
        QList<QSize> xret = ((const x_QIcon*)this)->QIcon::availableSizes((QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    void x_52(Smoke::Stack x) {
        // QList<QSize> availableSizes(QIcon::Mode) const
        QList<QSize> xret = ((const x_QIcon*)this)->QIcon::availableSizes((QIcon::Mode)x[1].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    static void x_53(Smoke::Stack x) {
        // static QIcon fromTheme(const QString&)
        QIcon xret = QIcon::fromTheme(*(const QString*)x[1].s_class,(const QIcon&)QIcon());
        x[0].s_class = (void*)new QIcon(xret);
    }
    static void x_54(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::Normal;
    }
    static void x_55(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::Disabled;
    }
    static void x_56(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::Active;
    }
    static void x_57(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::Selected;
    }
    static void x_58(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::On;
    }
    static void x_59(Smoke::Stack x) {
        x[0].s_enum = (long)QIcon::Off;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 389: //QIcon::Mode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QIcon::Mode;
                    break;
                case Smoke::EnumDelete:
                    delete (QIcon::Mode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QIcon::Mode*)xdata = (QIcon::Mode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QIcon::Mode*)xdata;
                    break;
            }
            break;
        case 390: //QIcon::State
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QIcon::State;
                    break;
                case Smoke::EnumDelete:
                    delete (QIcon::State*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QIcon::State*)xdata = (QIcon::State)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QIcon::State*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QIcon() { this->_binding->deleted(175, (void*)this); }
};
void xenum_QIcon(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QIcon::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QIcon(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIcon *xself = (x_QIcon*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QIcon::x_1(args);	break;
        case 2: x_QIcon::x_2(args);	break;
        case 3: x_QIcon::x_3(args);	break;
        case 4: x_QIcon::x_4(args);	break;
        case 5: x_QIcon::x_5(args);	break;
        case 6: x_QIcon::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: x_QIcon::x_25(args);	break;
        case 26: x_QIcon::x_26(args);	break;
        case 27: x_QIcon::x_27(args);	break;
        case 28: x_QIcon::x_28(args);	break;
        case 29: x_QIcon::x_29(args);	break;
        case 30: x_QIcon::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: x_QIcon::x_53(args);	break;
        case 54: x_QIcon::x_54(args);	break;
        case 55: x_QIcon::x_55(args);	break;
        case 56: x_QIcon::x_56(args);	break;
        case 57: x_QIcon::x_57(args);	break;
        case 58: x_QIcon::x_58(args);	break;
        case 59: x_QIcon::x_59(args);	break;
        case 60: delete (QIcon*)xself;	break;
    }
}
class x_QIconDragEvent : public QIconDragEvent, 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) {
        // QIconDragEvent* QIconDragEvent()
        x_QIconDragEvent* xret = new x_QIconDragEvent();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconDragEvent() : QIconDragEvent() {}
    static void x_2(Smoke::Stack x) {
        // QIconDragEvent* QIconDragEvent(const QIconDragEvent&)
        x_QIconDragEvent* xret = new x_QIconDragEvent(*(const QIconDragEvent*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconDragEvent(const QIconDragEvent& x1) : QIconDragEvent(x1) {}
    ~x_QIconDragEvent() { this->_binding->deleted(176, (void*)this); }
};
void xcall_QIconDragEvent(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconDragEvent *xself = (x_QIconDragEvent*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QIconDragEvent::x_1(args);	break;
        case 2: x_QIconDragEvent::x_2(args);	break;
        case 3: delete (QIconDragEvent*)xself;	break;
    }
}
class x_QIconEngine : public QIconEngine, 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 void paint(QPainter*, const QRect&, QIcon::Mode, QIcon::State) = 0
        this->paint((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(QIcon::Mode)x[3].s_enum,(QIcon::State)x[4].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_2(Smoke::Stack x) {
        // virtual QSize actualSize(const QSize&, QIcon::Mode, QIcon::State)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngine*>(this))) {
            QSize xret = this->QIconEngine::actualSize(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = this->actualSize(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_3(Smoke::Stack x) {
        // virtual QPixmap pixmap(const QSize&, QIcon::Mode, QIcon::State)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngine*>(this))) {
            QPixmap xret = this->QIconEngine::pixmap(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            x[0].s_class = (void*)new QPixmap(xret);
        } else {
            QPixmap xret = this->pixmap(*(const QSize*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            x[0].s_class = (void*)new QPixmap(xret);
        }
    }
    void x_4(Smoke::Stack x) {
        // virtual void addPixmap(const QPixmap&, QIcon::Mode, QIcon::State)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngine*>(this))) {
            this->QIconEngine::addPixmap(*(const QPixmap*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->addPixmap(*(const QPixmap*)x[1].s_class,(QIcon::Mode)x[2].s_enum,(QIcon::State)x[3].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual void addFile(const QString&, const QSize&, QIcon::Mode, QIcon::State)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngine*>(this))) {
            this->QIconEngine::addFile(*(const QString*)x[1].s_class,*(const QSize*)x[2].s_class,(QIcon::Mode)x[3].s_enum,(QIcon::State)x[4].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->addFile(*(const QString*)x[1].s_class,*(const QSize*)x[2].s_class,(QIcon::Mode)x[3].s_enum,(QIcon::State)x[4].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_6(Smoke::Stack x) {
        // QIconEngine* QIconEngine()
        x_QIconEngine* xret = new x_QIconEngine();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngine() : QIconEngine() {}
    static void x_7(Smoke::Stack x) {
        // QIconEngine* QIconEngine(const QIconEngine&)
        x_QIconEngine* xret = new x_QIconEngine(*(const QIconEngine*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngine(const QIconEngine& x1) : QIconEngine(x1) {}
    virtual void paint(QPainter* x1, const QRect& x2, QIcon::Mode x3, QIcon::State x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_enum = x3;
        x[4].s_enum = x4;
        this->_binding->callMethod(6231, (void*)this, x, true /*pure virtual*/);
    }
    virtual QSize actualSize(const QSize& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6232, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIconEngine::actualSize(x1, x2, x3);
    }
    virtual QPixmap pixmap(const QSize& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6233, (void*)this, x)) {
            QPixmap* xptr = (QPixmap*)x[0].s_class;
            QPixmap xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIconEngine::pixmap(x1, x2, x3);
    }
    virtual void addPixmap(const QPixmap& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6234, (void*)this, x)) return;
        this->QIconEngine::addPixmap(x1, x2, x3);
    }
    virtual void addFile(const QString& x1, const QSize& x2, QIcon::Mode x3, QIcon::State x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_enum = x3;
        x[4].s_enum = x4;
        if (this->_binding->callMethod(6235, (void*)this, x)) return;
        this->QIconEngine::addFile(x1, x2, x3, x4);
    }
    ~x_QIconEngine() { this->_binding->deleted(177, (void*)this); }
};
void xcall_QIconEngine(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEngine *xself = (x_QIconEngine*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: x_QIconEngine::x_6(args);	break;
        case 7: x_QIconEngine::x_7(args);	break;
        case 8: delete (QIconEngine*)xself;	break;
    }
}
class x_QIconEngineFactoryInterface : public QIconEngineFactoryInterface, 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 QIconEngine* create(const QString&) = 0
        QIconEngine* xret = this->create(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_2(Smoke::Stack x) {
        // QIconEngineFactoryInterface* QIconEngineFactoryInterface()
        x_QIconEngineFactoryInterface* xret = new x_QIconEngineFactoryInterface();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineFactoryInterface() : QIconEngineFactoryInterface() {}
    static void x_3(Smoke::Stack x) {
        // QIconEngineFactoryInterface* QIconEngineFactoryInterface(const QIconEngineFactoryInterface&)
        x_QIconEngineFactoryInterface* xret = new x_QIconEngineFactoryInterface(*(const QIconEngineFactoryInterface*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineFactoryInterface(const QIconEngineFactoryInterface& x1) : QIconEngineFactoryInterface(x1) {}
    virtual QIconEngine* create(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(6239, (void*)this, x, true /*pure virtual*/);
        return (QIconEngine*)x[0].s_class;
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(2954, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QIconEngineFactoryInterface() { this->_binding->deleted(178, (void*)this); }
};
void xcall_QIconEngineFactoryInterface(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEngineFactoryInterface *xself = (x_QIconEngineFactoryInterface*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: x_QIconEngineFactoryInterface::x_2(args);	break;
        case 3: x_QIconEngineFactoryInterface::x_3(args);	break;
        case 4: delete (QIconEngineFactoryInterface*)xself;	break;
    }
}
class x_QIconEngineFactoryInterfaceV2 : public QIconEngineFactoryInterfaceV2, 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 QIconEngineV2* create(const QString&) = 0
        QIconEngineV2* xret = this->create(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_2(Smoke::Stack x) {
        // QIconEngineFactoryInterfaceV2* QIconEngineFactoryInterfaceV2()
        x_QIconEngineFactoryInterfaceV2* xret = new x_QIconEngineFactoryInterfaceV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineFactoryInterfaceV2() : QIconEngineFactoryInterfaceV2() {}
    static void x_3(Smoke::Stack x) {
        // QIconEngineFactoryInterfaceV2* QIconEngineFactoryInterfaceV2(const QIconEngineFactoryInterfaceV2&)
        x_QIconEngineFactoryInterfaceV2* xret = new x_QIconEngineFactoryInterfaceV2(*(const QIconEngineFactoryInterfaceV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineFactoryInterfaceV2(const QIconEngineFactoryInterfaceV2& x1) : QIconEngineFactoryInterfaceV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QIconEngineV2* create()
        QIconEngineV2* xret = this->create((const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    virtual QIconEngineV2* create(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(6243, (void*)this, x, true /*pure virtual*/);
        return (QIconEngineV2*)x[0].s_class;
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(2954, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QIconEngineFactoryInterfaceV2() { this->_binding->deleted(179, (void*)this); }
};
void xcall_QIconEngineFactoryInterfaceV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEngineFactoryInterfaceV2 *xself = (x_QIconEngineFactoryInterfaceV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: x_QIconEngineFactoryInterfaceV2::x_2(args);	break;
        case 3: x_QIconEngineFactoryInterfaceV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QIconEngineFactoryInterfaceV2*)xself;	break;
    }
}
class x_QIconEnginePlugin : public QIconEnginePlugin, 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<QIconEnginePlugin*>(this))) {
            const QMetaObject* xret = ((const x_QIconEnginePlugin*)this)->QIconEnginePlugin::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QIconEnginePlugin*)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<QIconEnginePlugin*>(this))) {
            void* xret = this->QIconEnginePlugin::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 = QIconEnginePlugin::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 = QIconEnginePlugin::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 = QIconEnginePlugin::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 = QIconEnginePlugin::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<QIconEnginePlugin*>(this))) {
            int xret = this->QIconEnginePlugin::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) {
        // QIconEnginePlugin* QIconEnginePlugin(QObject*)
        x_QIconEnginePlugin* xret = new x_QIconEnginePlugin((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEnginePlugin(QObject* x1) : QIconEnginePlugin(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual QStringList keys() const = 0
        QStringList xret = ((const x_QIconEnginePlugin*)this)->keys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_10(Smoke::Stack x) {
        // virtual QIconEngine* create(const QString&) = 0
        QIconEngine* xret = this->create(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_11(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QIconEnginePlugin::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_12(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QIconEnginePlugin::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // QIconEnginePlugin* QIconEnginePlugin()
        x_QIconEnginePlugin* xret = new x_QIconEnginePlugin((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_14(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QIconEnginePlugin::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6248, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QIconEnginePlugin::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6249, (void*)this, x)) return (void*)x[0].s_class;
        return this->QIconEnginePlugin::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(6254, (void*)this, x)) return (int)x[0].s_int;
        return this->QIconEnginePlugin::qt_metacall(x1, x2, x3);
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(6256, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    virtual QIconEngine* create(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(6257, (void*)this, x, true /*pure virtual*/);
        return (QIconEngine*)x[0].s_class;
    }
    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);
    }
    ~x_QIconEnginePlugin() { this->_binding->deleted(180, (void*)this); }
};
void xcall_QIconEnginePlugin(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEnginePlugin *xself = (x_QIconEnginePlugin*)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_QIconEnginePlugin::x_3(args);	break;
        case 4: x_QIconEnginePlugin::x_4(args);	break;
        case 5: x_QIconEnginePlugin::x_5(args);	break;
        case 6: x_QIconEnginePlugin::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QIconEnginePlugin::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_QIconEnginePlugin::x_11(args);	break;
        case 12: x_QIconEnginePlugin::x_12(args);	break;
        case 13: x_QIconEnginePlugin::x_13(args);	break;
        case 14: x_QIconEnginePlugin::x_14(args);	break;
        case 15: delete (QIconEnginePlugin*)xself;	break;
    }
}
class x_QIconEnginePluginV2 : public QIconEnginePluginV2, 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<QIconEnginePluginV2*>(this))) {
            const QMetaObject* xret = ((const x_QIconEnginePluginV2*)this)->QIconEnginePluginV2::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QIconEnginePluginV2*)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<QIconEnginePluginV2*>(this))) {
            void* xret = this->QIconEnginePluginV2::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 = QIconEnginePluginV2::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 = QIconEnginePluginV2::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 = QIconEnginePluginV2::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 = QIconEnginePluginV2::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<QIconEnginePluginV2*>(this))) {
            int xret = this->QIconEnginePluginV2::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) {
        // QIconEnginePluginV2* QIconEnginePluginV2(QObject*)
        x_QIconEnginePluginV2* xret = new x_QIconEnginePluginV2((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEnginePluginV2(QObject* x1) : QIconEnginePluginV2(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual QStringList keys() const = 0
        QStringList xret = ((const x_QIconEnginePluginV2*)this)->keys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_10(Smoke::Stack x) {
        // virtual QIconEngineV2* create(const QString&) = 0
        QIconEngineV2* xret = this->create(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_11(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QIconEnginePluginV2::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_12(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QIconEnginePluginV2::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // QIconEnginePluginV2* QIconEnginePluginV2()
        x_QIconEnginePluginV2* xret = new x_QIconEnginePluginV2((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // QIconEngineV2* create()
        QIconEngineV2* xret = this->create((const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_15(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QIconEnginePluginV2::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6263, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QIconEnginePluginV2::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6264, (void*)this, x)) return (void*)x[0].s_class;
        return this->QIconEnginePluginV2::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(6269, (void*)this, x)) return (int)x[0].s_int;
        return this->QIconEnginePluginV2::qt_metacall(x1, x2, x3);
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(6271, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    virtual QIconEngineV2* create(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(6272, (void*)this, x, true /*pure virtual*/);
        return (QIconEngineV2*)x[0].s_class;
    }
    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);
    }
    ~x_QIconEnginePluginV2() { this->_binding->deleted(181, (void*)this); }
};
void xcall_QIconEnginePluginV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEnginePluginV2 *xself = (x_QIconEnginePluginV2*)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_QIconEnginePluginV2::x_3(args);	break;
        case 4: x_QIconEnginePluginV2::x_4(args);	break;
        case 5: x_QIconEnginePluginV2::x_5(args);	break;
        case 6: x_QIconEnginePluginV2::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QIconEnginePluginV2::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_QIconEnginePluginV2::x_11(args);	break;
        case 12: x_QIconEnginePluginV2::x_12(args);	break;
        case 13: x_QIconEnginePluginV2::x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: x_QIconEnginePluginV2::x_15(args);	break;
        case 16: delete (QIconEnginePluginV2*)xself;	break;
    }
}
class x_QIconEngineV2 : public QIconEngineV2, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual QString key() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngineV2*>(this))) {
            QString xret = ((const x_QIconEngineV2*)this)->QIconEngineV2::key();
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = ((const x_QIconEngineV2*)this)->key();
            x[0].s_class = (void*)new QString(xret);
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual QIconEngineV2* clone() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngineV2*>(this))) {
            QIconEngineV2* xret = ((const x_QIconEngineV2*)this)->QIconEngineV2::clone();
            x[0].s_class = (void*)xret;
        } else {
            QIconEngineV2* xret = ((const x_QIconEngineV2*)this)->clone();
            x[0].s_class = (void*)xret;
        }
    }
    void x_3(Smoke::Stack x) {
        // virtual bool read(QDataStream&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngineV2*>(this))) {
            bool xret = this->QIconEngineV2::read(*(QDataStream*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->read(*(QDataStream*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_4(Smoke::Stack x) {
        // virtual bool write(QDataStream&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngineV2*>(this))) {
            bool xret = ((const x_QIconEngineV2*)this)->QIconEngineV2::write(*(QDataStream*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QIconEngineV2*)this)->write(*(QDataStream*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual void virtual_hook(int, void*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QIconEngineV2*>(this))) {
            this->QIconEngineV2::virtual_hook((int)x[1].s_int,(void*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->virtual_hook((int)x[1].s_int,(void*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_6(Smoke::Stack x) {
        // QList<QSize> availableSizes(QIcon::Mode, QIcon::State)
        QList<QSize> xret = this->QIconEngineV2::availableSizes((QIcon::Mode)x[1].s_enum,(QIcon::State)x[2].s_enum);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    void x_7(Smoke::Stack x) {
        // QString iconName()
        QString xret = this->QIconEngineV2::iconName();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_8(Smoke::Stack x) {
        // QIconEngineV2* QIconEngineV2()
        x_QIconEngineV2* xret = new x_QIconEngineV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineV2() : QIconEngineV2() {}
    static void x_9(Smoke::Stack x) {
        // QIconEngineV2* QIconEngineV2(const QIconEngineV2&)
        x_QIconEngineV2* xret = new x_QIconEngineV2(*(const QIconEngineV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineV2(const QIconEngineV2& x1) : QIconEngineV2(x1) {}
    void x_10(Smoke::Stack x) {
        // QList<QSize> availableSizes()
        QList<QSize> xret = this->QIconEngineV2::availableSizes((QIcon::Mode)QIcon::Normal,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    void x_11(Smoke::Stack x) {
        // QList<QSize> availableSizes(QIcon::Mode)
        QList<QSize> xret = this->QIconEngineV2::availableSizes((QIcon::Mode)x[1].s_enum,(QIcon::State)QIcon::Off);
        x[0].s_class = (void*)new QList<QSize>(xret);
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QIconEngineV2::AvailableSizesHook;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QIconEngineV2::IconNameHook;
    }
    virtual QString key() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6279, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIconEngineV2::key();
    }
    virtual QIconEngineV2* clone() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6280, (void*)this, x)) return (QIconEngineV2*)x[0].s_class;
        return this->QIconEngineV2::clone();
    }
    virtual bool read(QDataStream& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6281, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIconEngineV2::read(x1);
    }
    virtual bool write(QDataStream& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6282, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIconEngineV2::write(x1);
    }
    virtual void virtual_hook(int x1, void* x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(6283, (void*)this, x)) return;
        this->QIconEngineV2::virtual_hook(x1, x2);
    }
    virtual void paint(QPainter* x1, const QRect& x2, QIcon::Mode x3, QIcon::State x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_enum = x3;
        x[4].s_enum = x4;
        this->_binding->callMethod(6231, (void*)this, x, true /*pure virtual*/);
    }
    virtual QSize actualSize(const QSize& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6232, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIconEngine::actualSize(x1, x2, x3);
    }
    virtual QPixmap pixmap(const QSize& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6233, (void*)this, x)) {
            QPixmap* xptr = (QPixmap*)x[0].s_class;
            QPixmap xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIconEngine::pixmap(x1, x2, x3);
    }
    virtual void addPixmap(const QPixmap& x1, QIcon::Mode x2, QIcon::State x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_enum = x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(6234, (void*)this, x)) return;
        this->QIconEngine::addPixmap(x1, x2, x3);
    }
    virtual void addFile(const QString& x1, const QSize& x2, QIcon::Mode x3, QIcon::State x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_enum = x3;
        x[4].s_enum = x4;
        if (this->_binding->callMethod(6235, (void*)this, x)) return;
        this->QIconEngine::addFile(x1, x2, x3, x4);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 399: //QIconEngineV2::IconEngineHook
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QIconEngineV2::IconEngineHook;
                    break;
                case Smoke::EnumDelete:
                    delete (QIconEngineV2::IconEngineHook*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QIconEngineV2::IconEngineHook*)xdata = (QIconEngineV2::IconEngineHook)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QIconEngineV2::IconEngineHook*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QIconEngineV2() { this->_binding->deleted(182, (void*)this); }
};
void xenum_QIconEngineV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QIconEngineV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QIconEngineV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEngineV2 *xself = (x_QIconEngineV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QIconEngineV2::x_8(args);	break;
        case 9: x_QIconEngineV2::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QIconEngineV2::x_12(args);	break;
        case 13: x_QIconEngineV2::x_13(args);	break;
        case 14: delete (QIconEngineV2*)xself;	break;
    }
}
class x_QIconEngineV2__AvailableSizesArgument : public QIconEngineV2::AvailableSizesArgument {
    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) {
        // QIconEngineV2::AvailableSizesArgument* AvailableSizesArgument()
        x_QIconEngineV2__AvailableSizesArgument* xret = new x_QIconEngineV2__AvailableSizesArgument();
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineV2__AvailableSizesArgument() : AvailableSizesArgument() {}
    static void x_2(Smoke::Stack x) {
        // QIconEngineV2::AvailableSizesArgument* AvailableSizesArgument(const QIconEngineV2::AvailableSizesArgument&)
        x_QIconEngineV2__AvailableSizesArgument* xret = new x_QIconEngineV2__AvailableSizesArgument(*(const QIconEngineV2::AvailableSizesArgument*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QIconEngineV2__AvailableSizesArgument(const QIconEngineV2::AvailableSizesArgument& x1) : AvailableSizesArgument(x1) {}
    void x_3(Smoke::Stack x) {
        // QIcon::Mode mode
        x[0].s_enum = this->QIconEngineV2::AvailableSizesArgument::mode;
    }
    void x_4(Smoke::Stack x) {
        // QIcon::Mode mode=
        this->QIconEngineV2::AvailableSizesArgument::mode = (QIcon::Mode)x[1].s_enum;
    }
    void x_5(Smoke::Stack x) {
        // QIcon::State state
        x[0].s_enum = this->QIconEngineV2::AvailableSizesArgument::state;
    }
    void x_6(Smoke::Stack x) {
        // QIcon::State state=
        this->QIconEngineV2::AvailableSizesArgument::state = (QIcon::State)x[1].s_enum;
    }
    void x_7(Smoke::Stack x) {
        // QList<QSize> sizes
        x[0].s_class = (void*)&this->QIconEngineV2::AvailableSizesArgument::sizes;
    }
    void x_8(Smoke::Stack x) {
        // QList<QSize> sizes=
        this->QIconEngineV2::AvailableSizesArgument::sizes = *(const QList<QSize>*)x[1].s_class;
    }
    ~x_QIconEngineV2__AvailableSizesArgument() { this->_binding->deleted(183, (void*)this); }
};
void xcall_QIconEngineV2__AvailableSizesArgument(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconEngineV2__AvailableSizesArgument *xself = (x_QIconEngineV2__AvailableSizesArgument*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QIconEngineV2__AvailableSizesArgument::x_1(args);	break;
        case 2: x_QIconEngineV2__AvailableSizesArgument::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: delete (QIconEngineV2::AvailableSizesArgument*)xself;	break;
    }
}
class x_QImage : public QImage, 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) {
        // QImage* QImage()
        x_QImage* xret = new x_QImage();
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage() : QImage() {}
    static void x_2(Smoke::Stack x) {
        // QImage* QImage(const QSize&, QImage::Format)
        x_QImage* xret = new x_QImage(*(const QSize*)x[1].s_class,(QImage::Format)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const QSize& x1, QImage::Format x2) : QImage(x1, x2) {}
    static void x_3(Smoke::Stack x) {
        // QImage* QImage(int, int, QImage::Format)
        x_QImage* xret = new x_QImage((int)x[1].s_int,(int)x[2].s_int,(QImage::Format)x[3].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(int x1, int x2, QImage::Format x3) : QImage(x1, x2, x3) {}
    static void x_4(Smoke::Stack x) {
        // QImage* QImage(unsigned char*, int, int, QImage::Format)
        x_QImage* xret = new x_QImage((unsigned char*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QImage::Format)x[4].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(unsigned char* x1, int x2, int x3, QImage::Format x4) : QImage(x1, x2, x3, x4) {}
    static void x_5(Smoke::Stack x) {
        // QImage* QImage(const unsigned char*, int, int, QImage::Format)
        x_QImage* xret = new x_QImage((const unsigned char*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(QImage::Format)x[4].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const unsigned char* x1, int x2, int x3, QImage::Format x4) : QImage(x1, x2, x3, x4) {}
    static void x_6(Smoke::Stack x) {
        // QImage* QImage(unsigned char*, int, int, int, QImage::Format)
        x_QImage* xret = new x_QImage((unsigned char*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(QImage::Format)x[5].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(unsigned char* x1, int x2, int x3, int x4, QImage::Format x5) : QImage(x1, x2, x3, x4, x5) {}
    static void x_7(Smoke::Stack x) {
        // QImage* QImage(const unsigned char*, int, int, int, QImage::Format)
        x_QImage* xret = new x_QImage((const unsigned char*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int,(QImage::Format)x[5].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const unsigned char* x1, int x2, int x3, int x4, QImage::Format x5) : QImage(x1, x2, x3, x4, x5) {}
    static void x_8(Smoke::Stack x) {
        // QImage* QImage(const char* const *)
        x_QImage* xret = new x_QImage((const char* const *)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const char* const * x1) : QImage(x1) {}
    static void x_9(Smoke::Stack x) {
        // QImage* QImage(const QString&, const char*)
        x_QImage* xret = new x_QImage(*(const QString*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const QString& x1, const char* x2) : QImage(x1, x2) {}
    static void x_10(Smoke::Stack x) {
        // QImage* QImage(const QImage&)
        x_QImage* xret = new x_QImage(*(const QImage*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImage(const QImage& x1) : QImage(x1) {}
    void x_11(Smoke::Stack x) {
        // QImage& operator=(const QImage&)
        QImage& xret = this->QImage::operator=(*(const QImage*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_12(Smoke::Stack x) {
        // void swap(QImage&)
        this->QImage::swap(*(QImage*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // bool isNull() const
        bool xret = ((const x_QImage*)this)->QImage::isNull();
        x[0].s_bool = xret;
    }
    void x_14(Smoke::Stack x) {
        // int devType() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImage*>(this))) {
            int xret = ((const x_QImage*)this)->QImage::devType();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImage*)this)->devType();
            x[0].s_int = xret;
        }
    }
    void x_15(Smoke::Stack x) {
        // bool operator==(const QImage&) const
        bool xret = ((const x_QImage*)this)->QImage::operator==(*(const QImage*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool operator!=(const QImage&) const
        bool xret = ((const x_QImage*)this)->QImage::operator!=(*(const QImage*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // QVariant operator QVariant() const
        QVariant xret = ((const x_QImage*)this)->QImage::operator QVariant();
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_18(Smoke::Stack x) {
        // void detach()
        this->QImage::detach();
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // bool isDetached() const
        bool xret = ((const x_QImage*)this)->QImage::isDetached();
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // QImage copy(const QRect&) const
        QImage xret = ((const x_QImage*)this)->QImage::copy(*(const QRect*)x[1].s_class);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_21(Smoke::Stack x) {
        // QImage copy(int, int, int, int) const
        QImage xret = ((const x_QImage*)this)->QImage::copy((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int,(int)x[4].s_int);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_22(Smoke::Stack x) {
        // QImage::Format format() const
        QImage::Format xret = ((const x_QImage*)this)->QImage::format();
        x[0].s_enum = xret;
    }
    void x_23(Smoke::Stack x) {
        // QImage convertToFormat(QImage::Format, QFlags<Qt::ImageConversionFlag>) const
        QImage xret = ((const x_QImage*)this)->QImage::convertToFormat((QImage::Format)x[1].s_enum,(QFlags<Qt::ImageConversionFlag>)x[2].s_uint);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_24(Smoke::Stack x) {
        // QImage convertToFormat(QImage::Format, const QVector<unsigned int>&, QFlags<Qt::ImageConversionFlag>) const
        QImage xret = ((const x_QImage*)this)->QImage::convertToFormat((QImage::Format)x[1].s_enum,*(const QVector<unsigned int>*)x[2].s_class,(QFlags<Qt::ImageConversionFlag>)x[3].s_uint);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_25(Smoke::Stack x) {
        // int width() const
        int xret = ((const x_QImage*)this)->QImage::width();
        x[0].s_int = xret;
    }
    void x_26(Smoke::Stack x) {
        // int height() const
        int xret = ((const x_QImage*)this)->QImage::height();
        x[0].s_int = xret;
    }
    void x_27(Smoke::Stack x) {
        // QSize size() const
        QSize xret = ((const x_QImage*)this)->QImage::size();
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_28(Smoke::Stack x) {
        // QRect rect() const
        QRect xret = ((const x_QImage*)this)->QImage::rect();
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_29(Smoke::Stack x) {
        // int depth() const
        int xret = ((const x_QImage*)this)->QImage::depth();
        x[0].s_int = xret;
    }
    void x_30(Smoke::Stack x) {
        // int numColors() const
        int xret = ((const x_QImage*)this)->QImage::numColors();
        x[0].s_int = xret;
    }
    void x_31(Smoke::Stack x) {
        // int colorCount() const
        int xret = ((const x_QImage*)this)->QImage::colorCount();
        x[0].s_int = xret;
    }
    void x_32(Smoke::Stack x) {
        // int bitPlaneCount() const
        int xret = ((const x_QImage*)this)->QImage::bitPlaneCount();
        x[0].s_int = xret;
    }
    void x_33(Smoke::Stack x) {
        // unsigned int color(int) const
        unsigned int xret = ((const x_QImage*)this)->QImage::color((int)x[1].s_int);
        x[0].s_uint = xret;
    }
    void x_34(Smoke::Stack x) {
        // void setColor(int, unsigned int)
        this->QImage::setColor((int)x[1].s_int,(unsigned int)x[2].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_35(Smoke::Stack x) {
        // void setNumColors(int)
        this->QImage::setNumColors((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void setColorCount(int)
        this->QImage::setColorCount((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // bool allGray() const
        bool xret = ((const x_QImage*)this)->QImage::allGray();
        x[0].s_bool = xret;
    }
    void x_38(Smoke::Stack x) {
        // bool isGrayscale() const
        bool xret = ((const x_QImage*)this)->QImage::isGrayscale();
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // unsigned char* bits()
        unsigned char* xret = this->QImage::bits();
        x[0].s_class = (void*)xret;
    }
    void x_40(Smoke::Stack x) {
        // const unsigned char* bits() const
        const unsigned char* xret = ((const x_QImage*)this)->QImage::bits();
        x[0].s_class = (void*)xret;
    }
    void x_41(Smoke::Stack x) {
        // const unsigned char* constBits() const
        const unsigned char* xret = ((const x_QImage*)this)->QImage::constBits();
        x[0].s_class = (void*)xret;
    }
    void x_42(Smoke::Stack x) {
        // int numBytes() const
        int xret = ((const x_QImage*)this)->QImage::numBytes();
        x[0].s_int = xret;
    }
    void x_43(Smoke::Stack x) {
        // int byteCount() const
        int xret = ((const x_QImage*)this)->QImage::byteCount();
        x[0].s_int = xret;
    }
    void x_44(Smoke::Stack x) {
        // unsigned char* scanLine(int)
        unsigned char* xret = this->QImage::scanLine((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_45(Smoke::Stack x) {
        // const unsigned char* scanLine(int) const
        const unsigned char* xret = ((const x_QImage*)this)->QImage::scanLine((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_46(Smoke::Stack x) {
        // const unsigned char* constScanLine(int) const
        const unsigned char* xret = ((const x_QImage*)this)->QImage::constScanLine((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_47(Smoke::Stack x) {
        // int bytesPerLine() const
        int xret = ((const x_QImage*)this)->QImage::bytesPerLine();
        x[0].s_int = xret;
    }
    void x_48(Smoke::Stack x) {
        // bool valid(int, int) const
        bool xret = ((const x_QImage*)this)->QImage::valid((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_bool = xret;
    }
    void x_49(Smoke::Stack x) {
        // bool valid(const QPoint&) const
        bool xret = ((const x_QImage*)this)->QImage::valid(*(const QPoint*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_50(Smoke::Stack x) {
        // int pixelIndex(int, int) const
        int xret = ((const x_QImage*)this)->QImage::pixelIndex((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_51(Smoke::Stack x) {
        // int pixelIndex(const QPoint&) const
        int xret = ((const x_QImage*)this)->QImage::pixelIndex(*(const QPoint*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_52(Smoke::Stack x) {
        // unsigned int pixel(int, int) const
        unsigned int xret = ((const x_QImage*)this)->QImage::pixel((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_uint = xret;
    }
    void x_53(Smoke::Stack x) {
        // unsigned int pixel(const QPoint&) const
        unsigned int xret = ((const x_QImage*)this)->QImage::pixel(*(const QPoint*)x[1].s_class);
        x[0].s_uint = xret;
    }
    void x_54(Smoke::Stack x) {
        // void setPixel(int, int, unsigned int)
        this->QImage::setPixel((int)x[1].s_int,(int)x[2].s_int,(unsigned int)x[3].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_55(Smoke::Stack x) {
        // void setPixel(const QPoint&, unsigned int)
        this->QImage::setPixel(*(const QPoint*)x[1].s_class,(unsigned int)x[2].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_56(Smoke::Stack x) {
        // QVector<unsigned int> colorTable() const
        QVector<unsigned int> xret = ((const x_QImage*)this)->QImage::colorTable();
        x[0].s_class = (void*)new QVector<unsigned int>(xret);
    }
    void x_57(Smoke::Stack x) {
        // void setColorTable(const QVector<unsigned int>)
        this->QImage::setColorTable(*(const QVector<unsigned int>*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_58(Smoke::Stack x) {
        // void fill(unsigned int)
        this->QImage::fill((unsigned int)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_59(Smoke::Stack x) {
        // void fill(const QColor&)
        this->QImage::fill(*(const QColor*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_60(Smoke::Stack x) {
        // void fill(Qt::GlobalColor)
        this->QImage::fill((Qt::GlobalColor)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_61(Smoke::Stack x) {
        // bool hasAlphaChannel() const
        bool xret = ((const x_QImage*)this)->QImage::hasAlphaChannel();
        x[0].s_bool = xret;
    }
    void x_62(Smoke::Stack x) {
        // void setAlphaChannel(const QImage&)
        this->QImage::setAlphaChannel(*(const QImage*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_63(Smoke::Stack x) {
        // QImage alphaChannel() const
        QImage xret = ((const x_QImage*)this)->QImage::alphaChannel();
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_64(Smoke::Stack x) {
        // QImage createAlphaMask(QFlags<Qt::ImageConversionFlag>) const
        QImage xret = ((const x_QImage*)this)->QImage::createAlphaMask((QFlags<Qt::ImageConversionFlag>)x[1].s_uint);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_65(Smoke::Stack x) {
        // QImage createHeuristicMask(bool) const
        QImage xret = ((const x_QImage*)this)->QImage::createHeuristicMask((bool)x[1].s_bool);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_66(Smoke::Stack x) {
        // QImage createMaskFromColor(unsigned int, Qt::MaskMode) const
        QImage xret = ((const x_QImage*)this)->QImage::createMaskFromColor((unsigned int)x[1].s_uint,(Qt::MaskMode)x[2].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_67(Smoke::Stack x) {
        // QImage scaled(int, int, Qt::AspectRatioMode, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled((int)x[1].s_int,(int)x[2].s_int,(Qt::AspectRatioMode)x[3].s_enum,(Qt::TransformationMode)x[4].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_68(Smoke::Stack x) {
        // QImage scaled(const QSize&, Qt::AspectRatioMode, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled(*(const QSize*)x[1].s_class,(Qt::AspectRatioMode)x[2].s_enum,(Qt::TransformationMode)x[3].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_69(Smoke::Stack x) {
        // QImage scaledToWidth(int, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaledToWidth((int)x[1].s_int,(Qt::TransformationMode)x[2].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_70(Smoke::Stack x) {
        // QImage scaledToHeight(int, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaledToHeight((int)x[1].s_int,(Qt::TransformationMode)x[2].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_71(Smoke::Stack x) {
        // QImage transformed(const QMatrix&, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::transformed(*(const QMatrix*)x[1].s_class,(Qt::TransformationMode)x[2].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    static void x_72(Smoke::Stack x) {
        // static QMatrix trueMatrix(const QMatrix&, int, int)
        QMatrix xret = QImage::trueMatrix(*(const QMatrix*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        x[0].s_class = (void*)new QMatrix(xret);
    }
    void x_73(Smoke::Stack x) {
        // QImage transformed(const QTransform&, Qt::TransformationMode) const
        QImage xret = ((const x_QImage*)this)->QImage::transformed(*(const QTransform*)x[1].s_class,(Qt::TransformationMode)x[2].s_enum);
        x[0].s_class = (void*)new QImage(xret);
    }
    static void x_74(Smoke::Stack x) {
        // static QTransform trueMatrix(const QTransform&, int, int)
        QTransform xret = QImage::trueMatrix(*(const QTransform*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        x[0].s_class = (void*)new QTransform(xret);
    }
    void x_75(Smoke::Stack x) {
        // QImage mirrored(bool, bool) const
        QImage xret = ((const x_QImage*)this)->QImage::mirrored((bool)x[1].s_bool,(bool)x[2].s_bool);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_76(Smoke::Stack x) {
        // QImage rgbSwapped() const
        QImage xret = ((const x_QImage*)this)->QImage::rgbSwapped();
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_77(Smoke::Stack x) {
        // void invertPixels(QImage::InvertMode)
        this->QImage::invertPixels((QImage::InvertMode)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_78(Smoke::Stack x) {
        // bool load(QIODevice*, const char*)
        bool xret = this->QImage::load((QIODevice*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_79(Smoke::Stack x) {
        // bool load(const QString&, const char*)
        bool xret = this->QImage::load(*(const QString*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_80(Smoke::Stack x) {
        // bool loadFromData(const unsigned char*, int, const char*)
        bool xret = this->QImage::loadFromData((const unsigned char*)x[1].s_class,(int)x[2].s_int,(const char*)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_81(Smoke::Stack x) {
        // bool loadFromData(const QByteArray&, const char*)
        bool xret = this->QImage::loadFromData(*(const QByteArray*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_82(Smoke::Stack x) {
        // bool save(const QString&, const char*, int) const
        bool xret = ((const x_QImage*)this)->QImage::save(*(const QString*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_bool = xret;
    }
    void x_83(Smoke::Stack x) {
        // bool save(QIODevice*, const char*, int) const
        bool xret = ((const x_QImage*)this)->QImage::save((QIODevice*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_bool = xret;
    }
    static void x_84(Smoke::Stack x) {
        // static QImage fromData(const unsigned char*, int, const char*)
        QImage xret = QImage::fromData((const unsigned char*)x[1].s_class,(int)x[2].s_int,(const char*)x[3].s_class);
        x[0].s_class = (void*)new QImage(xret);
    }
    static void x_85(Smoke::Stack x) {
        // static QImage fromData(const QByteArray&, const char*)
        QImage xret = QImage::fromData(*(const QByteArray*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_86(Smoke::Stack x) {
        // int serialNumber() const
        int xret = ((const x_QImage*)this)->QImage::serialNumber();
        x[0].s_int = xret;
    }
    void x_87(Smoke::Stack x) {
        // long long cacheKey() const
        long long xret = ((const x_QImage*)this)->QImage::cacheKey();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_88(Smoke::Stack x) {
        // QPaintEngine* paintEngine() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImage*>(this))) {
            QPaintEngine* xret = ((const x_QImage*)this)->QImage::paintEngine();
            x[0].s_class = (void*)xret;
        } else {
            QPaintEngine* xret = ((const x_QImage*)this)->paintEngine();
            x[0].s_class = (void*)xret;
        }
    }
    void x_89(Smoke::Stack x) {
        // int dotsPerMeterX() const
        int xret = ((const x_QImage*)this)->QImage::dotsPerMeterX();
        x[0].s_int = xret;
    }
    void x_90(Smoke::Stack x) {
        // int dotsPerMeterY() const
        int xret = ((const x_QImage*)this)->QImage::dotsPerMeterY();
        x[0].s_int = xret;
    }
    void x_91(Smoke::Stack x) {
        // void setDotsPerMeterX(int)
        this->QImage::setDotsPerMeterX((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_92(Smoke::Stack x) {
        // void setDotsPerMeterY(int)
        this->QImage::setDotsPerMeterY((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_93(Smoke::Stack x) {
        // QPoint offset() const
        QPoint xret = ((const x_QImage*)this)->QImage::offset();
        x[0].s_class = (void*)new QPoint(xret);
    }
    void x_94(Smoke::Stack x) {
        // void setOffset(const QPoint&)
        this->QImage::setOffset(*(const QPoint*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_95(Smoke::Stack x) {
        // QStringList textKeys() const
        QStringList xret = ((const x_QImage*)this)->QImage::textKeys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_96(Smoke::Stack x) {
        // QString text(const QString&) const
        QString xret = ((const x_QImage*)this)->QImage::text(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_97(Smoke::Stack x) {
        // void setText(const QString&, const QString&)
        this->QImage::setText(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_98(Smoke::Stack x) {
        // QString text(const char*, const char*) const
        QString xret = ((const x_QImage*)this)->QImage::text((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_99(Smoke::Stack x) {
        // QList<QImageTextKeyLang> textList() const
        QList<QImageTextKeyLang> xret = ((const x_QImage*)this)->QImage::textList();
        x[0].s_class = (void*)new QList<QImageTextKeyLang>(xret);
    }
    void x_100(Smoke::Stack x) {
        // QStringList textLanguages() const
        QStringList xret = ((const x_QImage*)this)->QImage::textLanguages();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_101(Smoke::Stack x) {
        // QString text(const QImageTextKeyLang&) const
        QString xret = ((const x_QImage*)this)->QImage::text(*(const QImageTextKeyLang*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_102(Smoke::Stack x) {
        // void setText(const char*, const char*, const QString&)
        this->QImage::setText((const char*)x[1].s_class,(const char*)x[2].s_class,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_103(Smoke::Stack x) {
        // virtual int metric(QPaintDevice::PaintDeviceMetric) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImage*>(this))) {
            int xret = ((const x_QImage*)this)->QImage::metric((QPaintDevice::PaintDeviceMetric)x[1].s_enum);
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImage*)this)->metric((QPaintDevice::PaintDeviceMetric)x[1].s_enum);
            x[0].s_int = xret;
        }
    }
    void x_104(Smoke::Stack x) {
        // QImageData*& data_ptr()
        QImageData*& xret = this->QImage::data_ptr();
        x[0].s_class = (void*)xret;
    }
    static void x_105(Smoke::Stack x) {
        // QImage* QImage(const QString&)
        x_QImage* xret = new x_QImage(*(const QString*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    void x_106(Smoke::Stack x) {
        // QImage copy() const
        QImage xret = ((const x_QImage*)this)->QImage::copy((const QRect&)QRect());
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_107(Smoke::Stack x) {
        // QImage convertToFormat(QImage::Format) const
        QImage xret = ((const x_QImage*)this)->QImage::convertToFormat((QImage::Format)x[1].s_enum,(QFlags<Qt::ImageConversionFlag>)Qt::AutoColor);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_108(Smoke::Stack x) {
        // QImage convertToFormat(QImage::Format, const QVector<unsigned int>&) const
        QImage xret = ((const x_QImage*)this)->QImage::convertToFormat((QImage::Format)x[1].s_enum,*(const QVector<unsigned int>*)x[2].s_class,(QFlags<Qt::ImageConversionFlag>)Qt::AutoColor);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_109(Smoke::Stack x) {
        // QImage createAlphaMask() const
        QImage xret = ((const x_QImage*)this)->QImage::createAlphaMask((QFlags<Qt::ImageConversionFlag>)Qt::AutoColor);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_110(Smoke::Stack x) {
        // QImage createHeuristicMask() const
        QImage xret = ((const x_QImage*)this)->QImage::createHeuristicMask((bool)true);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_111(Smoke::Stack x) {
        // QImage createMaskFromColor(unsigned int) const
        QImage xret = ((const x_QImage*)this)->QImage::createMaskFromColor((unsigned int)x[1].s_uint,(Qt::MaskMode)Qt::MaskInColor);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_112(Smoke::Stack x) {
        // QImage scaled(int, int) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled((int)x[1].s_int,(int)x[2].s_int,(Qt::AspectRatioMode)Qt::IgnoreAspectRatio,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_113(Smoke::Stack x) {
        // QImage scaled(int, int, Qt::AspectRatioMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled((int)x[1].s_int,(int)x[2].s_int,(Qt::AspectRatioMode)x[3].s_enum,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_114(Smoke::Stack x) {
        // QImage scaled(const QSize&) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled(*(const QSize*)x[1].s_class,(Qt::AspectRatioMode)Qt::IgnoreAspectRatio,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_115(Smoke::Stack x) {
        // QImage scaled(const QSize&, Qt::AspectRatioMode) const
        QImage xret = ((const x_QImage*)this)->QImage::scaled(*(const QSize*)x[1].s_class,(Qt::AspectRatioMode)x[2].s_enum,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_116(Smoke::Stack x) {
        // QImage scaledToWidth(int) const
        QImage xret = ((const x_QImage*)this)->QImage::scaledToWidth((int)x[1].s_int,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_117(Smoke::Stack x) {
        // QImage scaledToHeight(int) const
        QImage xret = ((const x_QImage*)this)->QImage::scaledToHeight((int)x[1].s_int,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_118(Smoke::Stack x) {
        // QImage transformed(const QMatrix&) const
        QImage xret = ((const x_QImage*)this)->QImage::transformed(*(const QMatrix*)x[1].s_class,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_119(Smoke::Stack x) {
        // QImage transformed(const QTransform&) const
        QImage xret = ((const x_QImage*)this)->QImage::transformed(*(const QTransform*)x[1].s_class,(Qt::TransformationMode)Qt::FastTransformation);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_120(Smoke::Stack x) {
        // QImage mirrored() const
        QImage xret = ((const x_QImage*)this)->QImage::mirrored((bool)false,(bool)true);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_121(Smoke::Stack x) {
        // QImage mirrored(bool) const
        QImage xret = ((const x_QImage*)this)->QImage::mirrored((bool)x[1].s_bool,(bool)true);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_122(Smoke::Stack x) {
        // void invertPixels()
        this->QImage::invertPixels((QImage::InvertMode)QImage::InvertRgb);
        (void)x; // noop (for compiler warning)
    }
    void x_123(Smoke::Stack x) {
        // bool load(const QString&)
        bool xret = this->QImage::load(*(const QString*)x[1].s_class,(const char*)0);
        x[0].s_bool = xret;
    }
    void x_124(Smoke::Stack x) {
        // bool loadFromData(const unsigned char*, int)
        bool xret = this->QImage::loadFromData((const unsigned char*)x[1].s_class,(int)x[2].s_int,(const char*)0);
        x[0].s_bool = xret;
    }
    void x_125(Smoke::Stack x) {
        // bool loadFromData(const QByteArray&)
        bool xret = this->QImage::loadFromData(*(const QByteArray*)x[1].s_class,(const char*)0);
        x[0].s_bool = xret;
    }
    void x_126(Smoke::Stack x) {
        // bool save(const QString&) const
        bool xret = ((const x_QImage*)this)->QImage::save(*(const QString*)x[1].s_class,(const char*)0,(int)-1);
        x[0].s_bool = xret;
    }
    void x_127(Smoke::Stack x) {
        // bool save(const QString&, const char*) const
        bool xret = ((const x_QImage*)this)->QImage::save(*(const QString*)x[1].s_class,(const char*)x[2].s_class,(int)-1);
        x[0].s_bool = xret;
    }
    void x_128(Smoke::Stack x) {
        // bool save(QIODevice*) const
        bool xret = ((const x_QImage*)this)->QImage::save((QIODevice*)x[1].s_class,(const char*)0,(int)-1);
        x[0].s_bool = xret;
    }
    void x_129(Smoke::Stack x) {
        // bool save(QIODevice*, const char*) const
        bool xret = ((const x_QImage*)this)->QImage::save((QIODevice*)x[1].s_class,(const char*)x[2].s_class,(int)-1);
        x[0].s_bool = xret;
    }
    static void x_130(Smoke::Stack x) {
        // static QImage fromData(const unsigned char*, int)
        QImage xret = QImage::fromData((const unsigned char*)x[1].s_class,(int)x[2].s_int,(const char*)0);
        x[0].s_class = (void*)new QImage(xret);
    }
    static void x_131(Smoke::Stack x) {
        // static QImage fromData(const QByteArray&)
        QImage xret = QImage::fromData(*(const QByteArray*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QImage(xret);
    }
    void x_132(Smoke::Stack x) {
        // QString text() const
        QString xret = ((const x_QImage*)this)->QImage::text((const QString&)QString());
        x[0].s_class = (void*)new QString(xret);
    }
    void x_133(Smoke::Stack x) {
        // QString text(const char*) const
        QString xret = ((const x_QImage*)this)->QImage::text((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_134(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::InvertRgb;
    }
    static void x_135(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::InvertRgba;
    }
    static void x_136(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_Invalid;
    }
    static void x_137(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_Mono;
    }
    static void x_138(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_MonoLSB;
    }
    static void x_139(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_Indexed8;
    }
    static void x_140(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB32;
    }
    static void x_141(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB32;
    }
    static void x_142(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB32_Premultiplied;
    }
    static void x_143(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB16;
    }
    static void x_144(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB8565_Premultiplied;
    }
    static void x_145(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB666;
    }
    static void x_146(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB6666_Premultiplied;
    }
    static void x_147(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB555;
    }
    static void x_148(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB8555_Premultiplied;
    }
    static void x_149(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB888;
    }
    static void x_150(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_RGB444;
    }
    static void x_151(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::Format_ARGB4444_Premultiplied;
    }
    static void x_152(Smoke::Stack x) {
        x[0].s_enum = (long)QImage::NImageFormats;
    }
    virtual int metric(QPaintDevice::PaintDeviceMetric x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(6404, (void*)this, x)) return (int)x[0].s_int;
        return this->QImage::metric(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6315, (void*)this, x)) return (int)x[0].s_int;
        return this->QImage::devType();
    }
    virtual QPaintEngine* paintEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6389, (void*)this, x)) return (QPaintEngine*)x[0].s_class;
        return this->QImage::paintEngine();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 405: //QImage::InvertMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QImage::InvertMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QImage::InvertMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QImage::InvertMode*)xdata = (QImage::InvertMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QImage::InvertMode*)xdata;
                    break;
            }
            break;
        case 404: //QImage::Format
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QImage::Format;
                    break;
                case Smoke::EnumDelete:
                    delete (QImage::Format*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QImage::Format*)xdata = (QImage::Format)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QImage::Format*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QImage() { this->_binding->deleted(185, (void*)this); }
};
void xenum_QImage(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QImage::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QImage(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QImage *xself = (x_QImage*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QImage::x_1(args);	break;
        case 2: x_QImage::x_2(args);	break;
        case 3: x_QImage::x_3(args);	break;
        case 4: x_QImage::x_4(args);	break;
        case 5: x_QImage::x_5(args);	break;
        case 6: x_QImage::x_6(args);	break;
        case 7: x_QImage::x_7(args);	break;
        case 8: x_QImage::x_8(args);	break;
        case 9: x_QImage::x_9(args);	break;
        case 10: x_QImage::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: xself->x_69(args);	break;
        case 70: xself->x_70(args);	break;
        case 71: xself->x_71(args);	break;
        case 72: x_QImage::x_72(args);	break;
        case 73: xself->x_73(args);	break;
        case 74: x_QImage::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: xself->x_79(args);	break;
        case 80: xself->x_80(args);	break;
        case 81: xself->x_81(args);	break;
        case 82: xself->x_82(args);	break;
        case 83: xself->x_83(args);	break;
        case 84: x_QImage::x_84(args);	break;
        case 85: x_QImage::x_85(args);	break;
        case 86: xself->x_86(args);	break;
        case 87: xself->x_87(args);	break;
        case 88: xself->x_88(args);	break;
        case 89: xself->x_89(args);	break;
        case 90: xself->x_90(args);	break;
        case 91: xself->x_91(args);	break;
        case 92: xself->x_92(args);	break;
        case 93: xself->x_93(args);	break;
        case 94: xself->x_94(args);	break;
        case 95: xself->x_95(args);	break;
        case 96: xself->x_96(args);	break;
        case 97: xself->x_97(args);	break;
        case 98: xself->x_98(args);	break;
        case 99: xself->x_99(args);	break;
        case 100: xself->x_100(args);	break;
        case 101: xself->x_101(args);	break;
        case 102: xself->x_102(args);	break;
        case 103: xself->x_103(args);	break;
        case 104: xself->x_104(args);	break;
        case 105: x_QImage::x_105(args);	break;
        case 106: xself->x_106(args);	break;
        case 107: xself->x_107(args);	break;
        case 108: xself->x_108(args);	break;
        case 109: xself->x_109(args);	break;
        case 110: xself->x_110(args);	break;
        case 111: xself->x_111(args);	break;
        case 112: xself->x_112(args);	break;
        case 113: xself->x_113(args);	break;
        case 114: xself->x_114(args);	break;
        case 115: xself->x_115(args);	break;
        case 116: xself->x_116(args);	break;
        case 117: xself->x_117(args);	break;
        case 118: xself->x_118(args);	break;
        case 119: xself->x_119(args);	break;
        case 120: xself->x_120(args);	break;
        case 121: xself->x_121(args);	break;
        case 122: xself->x_122(args);	break;
        case 123: xself->x_123(args);	break;
        case 124: xself->x_124(args);	break;
        case 125: xself->x_125(args);	break;
        case 126: xself->x_126(args);	break;
        case 127: xself->x_127(args);	break;
        case 128: xself->x_128(args);	break;
        case 129: xself->x_129(args);	break;
        case 130: x_QImage::x_130(args);	break;
        case 131: x_QImage::x_131(args);	break;
        case 132: xself->x_132(args);	break;
        case 133: xself->x_133(args);	break;
        case 134: x_QImage::x_134(args);	break;
        case 135: x_QImage::x_135(args);	break;
        case 136: x_QImage::x_136(args);	break;
        case 137: x_QImage::x_137(args);	break;
        case 138: x_QImage::x_138(args);	break;
        case 139: x_QImage::x_139(args);	break;
        case 140: x_QImage::x_140(args);	break;
        case 141: x_QImage::x_141(args);	break;
        case 142: x_QImage::x_142(args);	break;
        case 143: x_QImage::x_143(args);	break;
        case 144: x_QImage::x_144(args);	break;
        case 145: x_QImage::x_145(args);	break;
        case 146: x_QImage::x_146(args);	break;
        case 147: x_QImage::x_147(args);	break;
        case 148: x_QImage::x_148(args);	break;
        case 149: x_QImage::x_149(args);	break;
        case 150: x_QImage::x_150(args);	break;
        case 151: x_QImage::x_151(args);	break;
        case 152: x_QImage::x_152(args);	break;
        case 153: delete (QImage*)xself;	break;
    }
}
class x_QImageIOHandler : public QImageIOHandler, 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) {
        // QImageIOHandler* QImageIOHandler()
        x_QImageIOHandler* xret = new x_QImageIOHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QImageIOHandler() : QImageIOHandler() {}
    void x_2(Smoke::Stack x) {
        // void setDevice(QIODevice*)
        this->QImageIOHandler::setDevice((QIODevice*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // QIODevice* device() const
        QIODevice* xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::device();
        x[0].s_class = (void*)xret;
    }
    void x_4(Smoke::Stack x) {
        // void setFormat(const QByteArray&)
        this->QImageIOHandler::setFormat(*(const QByteArray*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // void setFormat(const QByteArray&) const
        ((const x_QImageIOHandler*)this)->QImageIOHandler::setFormat(*(const QByteArray*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // QByteArray format() const
        QByteArray xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::format();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual QByteArray name() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            QByteArray xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::name();
            x[0].s_class = (void*)new QByteArray(xret);
        } else {
            QByteArray xret = ((const x_QImageIOHandler*)this)->name();
            x[0].s_class = (void*)new QByteArray(xret);
        }
    }
    void x_8(Smoke::Stack x) {
        // virtual bool canRead() const = 0
        bool xret = ((const x_QImageIOHandler*)this)->canRead();
        x[0].s_bool = xret;
    }
    void x_9(Smoke::Stack x) {
        // virtual bool read(QImage*) = 0
        bool xret = this->read((QImage*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // virtual bool write(const QImage&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            bool xret = this->QImageIOHandler::write(*(const QImage*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->write(*(const QImage*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_11(Smoke::Stack x) {
        // virtual QVariant option(QImageIOHandler::ImageOption) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            QVariant xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::option((QImageIOHandler::ImageOption)x[1].s_enum);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = ((const x_QImageIOHandler*)this)->option((QImageIOHandler::ImageOption)x[1].s_enum);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_12(Smoke::Stack x) {
        // virtual void setOption(QImageIOHandler::ImageOption, const QVariant&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            this->QImageIOHandler::setOption((QImageIOHandler::ImageOption)x[1].s_enum,*(const QVariant*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setOption((QImageIOHandler::ImageOption)x[1].s_enum,*(const QVariant*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // virtual bool supportsOption(QImageIOHandler::ImageOption) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            bool xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::supportsOption((QImageIOHandler::ImageOption)x[1].s_enum);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QImageIOHandler*)this)->supportsOption((QImageIOHandler::ImageOption)x[1].s_enum);
            x[0].s_bool = xret;
        }
    }
    void x_14(Smoke::Stack x) {
        // virtual bool jumpToNextImage()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            bool xret = this->QImageIOHandler::jumpToNextImage();
            x[0].s_bool = xret;
        } else {
            bool xret = this->jumpToNextImage();
            x[0].s_bool = xret;
        }
    }
    void x_15(Smoke::Stack x) {
        // virtual bool jumpToImage(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            bool xret = this->QImageIOHandler::jumpToImage((int)x[1].s_int);
            x[0].s_bool = xret;
        } else {
            bool xret = this->jumpToImage((int)x[1].s_int);
            x[0].s_bool = xret;
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual int loopCount() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            int xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::loopCount();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImageIOHandler*)this)->loopCount();
            x[0].s_int = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // virtual int imageCount() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            int xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::imageCount();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImageIOHandler*)this)->imageCount();
            x[0].s_int = xret;
        }
    }
    void x_18(Smoke::Stack x) {
        // virtual int nextImageDelay() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            int xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::nextImageDelay();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImageIOHandler*)this)->nextImageDelay();
            x[0].s_int = xret;
        }
    }
    void x_19(Smoke::Stack x) {
        // virtual int currentImageNumber() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            int xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::currentImageNumber();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QImageIOHandler*)this)->currentImageNumber();
            x[0].s_int = xret;
        }
    }
    void x_20(Smoke::Stack x) {
        // virtual QRect currentImageRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QImageIOHandler*>(this))) {
            QRect xret = ((const x_QImageIOHandler*)this)->QImageIOHandler::currentImageRect();
            x[0].s_class = (void*)new QRect(xret);
        } else {
            QRect xret = ((const x_QImageIOHandler*)this)->currentImageRect();
            x[0].s_class = (void*)new QRect(xret);
        }
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Size;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::ClipRect;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Description;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::ScaledClipRect;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::ScaledSize;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::CompressionRatio;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Gamma;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Quality;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Name;
    }
    static void x_30(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::SubType;
    }
    static void x_31(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::IncrementalReading;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Endianness;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::Animation;
    }
    static void x_34(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::BackgroundColor;
    }
    static void x_35(Smoke::Stack x) {
        x[0].s_enum = (long)QImageIOHandler::ImageFormat;
    }
    virtual QByteArray name() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6461, (void*)this, x)) {
            QByteArray* xptr = (QByteArray*)x[0].s_class;
            QByteArray xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QImageIOHandler::name();
    }
    virtual bool canRead() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(6462, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool read(QImage* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(6463, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool write(const QImage& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(6464, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QImageIOHandler::write(x1);
    }
    virtual QVariant option(QImageIOHandler::ImageOption x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(6465, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QImageIOHandler::option(x1);
    }
    virtual void setOption(QImageIOHandler::ImageOption x1, const QVariant& x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(6466, (void*)this, x)) return;
        this->QImageIOHandler::setOption(x1, x2);
    }
    virtual bool supportsOption(QImageIOHandler::ImageOption x1) const {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(6467, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QImageIOHandler::supportsOption(x1);
    }
    virtual bool jumpToNextImage() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6468, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QImageIOHandler::jumpToNextImage();
    }
    virtual bool jumpToImage(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(6469, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QImageIOHandler::jumpToImage(x1);
    }
    virtual int loopCount() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6470, (void*)this, x)) return (int)x[0].s_int;
        return this->QImageIOHandler::loopCount();
    }
    virtual int imageCount() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6471, (void*)this, x)) return (int)x[0].s_int;
        return this->QImageIOHandler::imageCount();
    }
    virtual int nextImageDelay() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6472, (void*)this, x)) return (int)x[0].s_int;
        return this->QImageIOHandler::nextImageDelay();
    }
    virtual int currentImageNumber() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6473, (void*)this, x)) return (int)x[0].s_int;
        return this->QImageIOHandler::currentImageNumber();
    }
    virtual QRect currentImageRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(6474, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QImageIOHandler::currentImageRect();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 408: //QImageIOHandler::ImageOption
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QImageIOHandler::ImageOption;
                    break;
                case Smoke::EnumDelete:
                    delete (QImageIOHandler::ImageOption*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QImageIOHandler::ImageOption*)xdata = (QImageIOHandler::ImageOption)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QImageIOHandler::ImageOption*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QImageIOHandler() { this->_binding->deleted(187, (void*)this); }
};
void xenum_QImageIOHandler(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QImageIOHandler::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QImageIOHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QImageIOHandler *xself = (x_QImageIOHandler*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QImageIOHandler::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_QImageIOHandler::x_21(args);	break;
        case 22: x_QImageIOHandler::x_22(args);	break;
        case 23: x_QImageIOHandler::x_23(args);	break;
        case 24: x_QImageIOHandler::x_24(args);	break;
        case 25: x_QImageIOHandler::x_25(args);	break;
        case 26: x_QImageIOHandler::x_26(args);	break;
        case 27: x_QImageIOHandler::x_27(args);	break;
        case 28: x_QImageIOHandler::x_28(args);	break;
        case 29: x_QImageIOHandler::x_29(args);	break;
        case 30: x_QImageIOHandler::x_30(args);	break;
        case 31: x_QImageIOHandler::x_31(args);	break;
        case 32: x_QImageIOHandler::x_32(args);	break;
        case 33: x_QImageIOHandler::x_33(args);	break;
        case 34: x_QImageIOHandler::x_34(args);	break;
        case 35: x_QImageIOHandler::x_35(args);	break;
        case 36: delete (QImageIOHandler*)xself;	break;
    }
}
class x_QImageIOHandlerFactoryInterface : public QImageIOHandlerFactoryInterface, 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 QImageIOHandler* create(QIODevice*, const QByteArray&) const = 0
        QImageIOHandler* xret = ((const x_QImageIOHandlerFactoryInterface*)this)->create((QIODevice*)x[1].s_class,*(const QByteArray*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_2(Smoke::Stack x) {
        // QImageIOHandlerFactoryInterface* QImageIOHandlerFactoryInterface()
        x_QImageIOHandlerFactoryInterface* xret = new x_QImageIOHandlerFactoryInterface();
        x[0].s_class = (void*)xret;
    }
    explicit x_QImageIOHandlerFactoryInterface() : QImageIOHandlerFactoryInterface() {}
    static void x_3(Smoke::Stack x) {
        // QImageIOHandlerFactoryInterface* QImageIOHandlerFactoryInterface(const QImageIOHandlerFactoryInterface&)
        x_QImageIOHandlerFactoryInterface* xret = new x_QImageIOHandlerFactoryInterface(*(const QImageIOHandlerFactoryInterface*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QImageIOHandlerFactoryInterface(const QImageIOHandlerFactoryInterface& x1) : QImageIOHandlerFactoryInterface(x1) {}
    void x_4(Smoke::Stack x) {
        // QImageIOHandler* create(QIODevice*) const
        QImageIOHandler* xret = ((const x_QImageIOHandlerFactoryInterface*)this)->create((QIODevice*)x[1].s_class,(const QByteArray&)QByteArray());
        x[0].s_class = (void*)xret;
    }
    virtual QImageIOHandler* create(QIODevice* x1, const QByteArray& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        this->_binding->callMethod(6491, (void*)this, x, true /*pure virtual*/);
        return (QImageIOHandler*)x[0].s_class;
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(2954, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QImageIOHandlerFactoryInterface() { this->_binding->deleted(188, (void*)this); }
};
void xcall_QImageIOHandlerFactoryInterface(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QImageIOHandlerFactoryInterface *xself = (x_QImageIOHandlerFactoryInterface*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: x_QImageIOHandlerFactoryInterface::x_2(args);	break;
        case 3: x_QImageIOHandlerFactoryInterface::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QImageIOHandlerFactoryInterface*)xself;	break;
    }
}

}
