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

#include <smoke.h>
#include <qt3support_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqt3support {

class x_Q3DateTimeEditBase : public Q3DateTimeEditBase, 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<Q3DateTimeEditBase*>(this))) {
            const QMetaObject* xret = ((const x_Q3DateTimeEditBase*)this)->Q3DateTimeEditBase::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3DateTimeEditBase*)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<Q3DateTimeEditBase*>(this))) {
            void* xret = this->Q3DateTimeEditBase::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 = Q3DateTimeEditBase::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 = Q3DateTimeEditBase::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 = Q3DateTimeEditBase::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 = Q3DateTimeEditBase::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<Q3DateTimeEditBase*>(this))) {
            int xret = this->Q3DateTimeEditBase::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) {
        // Q3DateTimeEditBase* Q3DateTimeEditBase(QWidget*, const char*)
        x_Q3DateTimeEditBase* xret = new x_Q3DateTimeEditBase((QWidget*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DateTimeEditBase(QWidget* x1, const char* x2) : Q3DateTimeEditBase(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // virtual bool setFocusSection(int) = 0
        bool xret = this->setFocusSection((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // virtual QString sectionFormattedText(int) = 0
        QString xret = this->sectionFormattedText((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // virtual void addNumber(int, int) = 0
        this->addNumber((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // virtual void removeLastNumber(int) = 0
        this->removeLastNumber((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // virtual void stepUp() = 0
        this->stepUp();
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // virtual void stepDown() = 0
        this->stepDown();
        (void)x; // noop (for compiler warning)
    }
    static void x_15(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3DateTimeEditBase::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_16(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3DateTimeEditBase::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // Q3DateTimeEditBase* Q3DateTimeEditBase()
        x_Q3DateTimeEditBase* xret = new x_Q3DateTimeEditBase((QWidget*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // Q3DateTimeEditBase* Q3DateTimeEditBase(QWidget*)
        x_Q3DateTimeEditBase* xret = new x_Q3DateTimeEditBase((QWidget*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_19(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3DateTimeEditBase::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1041, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3DateTimeEditBase::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1042, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3DateTimeEditBase::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(1047, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3DateTimeEditBase::qt_metacall(x1, x2, x3);
    }
    virtual bool setFocusSection(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        this->_binding->callMethod(1049, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString sectionFormattedText(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        this->_binding->callMethod(1050, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    virtual void addNumber(int x1, int x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_int = x2;
        this->_binding->callMethod(1051, (void*)this, x, true /*pure virtual*/);
    }
    virtual void removeLastNumber(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        this->_binding->callMethod(1052, (void*)this, x, true /*pure virtual*/);
    }
    virtual void stepUp() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(1053, (void*)this, x, true /*pure virtual*/);
    }
    virtual void stepDown() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(1054, (void*)this, x, true /*pure virtual*/);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(5253, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5254, (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(5255, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5256, (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(5259, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5260, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5261, (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(5262, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5263, (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(5264, (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(5265, (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(5266, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5267, (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(5268, (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(5269, (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(5270, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5271, (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(5272, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5273, (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(5274, (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(5275, (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(5276, (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(5277, (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(5278, (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(5279, (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(5280, (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(5281, (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(5282, (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(5283, (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(5284, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5286, (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(5287, (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(5288, (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(5289, (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(5290, (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(5291, (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(5292, (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(5293, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5294, (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(5258, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5252, (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(5257, (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(5285, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_Q3DateTimeEditBase() { this->_binding->deleted(32, (void*)this); }
};
void xcall_Q3DateTimeEditBase(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3DateTimeEditBase *xself = (x_Q3DateTimeEditBase*)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_Q3DateTimeEditBase::x_3(args);	break;
        case 4: x_Q3DateTimeEditBase::x_4(args);	break;
        case 5: x_Q3DateTimeEditBase::x_5(args);	break;
        case 6: x_Q3DateTimeEditBase::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3DateTimeEditBase::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: x_Q3DateTimeEditBase::x_15(args);	break;
        case 16: x_Q3DateTimeEditBase::x_16(args);	break;
        case 17: x_Q3DateTimeEditBase::x_17(args);	break;
        case 18: x_Q3DateTimeEditBase::x_18(args);	break;
        case 19: x_Q3DateTimeEditBase::x_19(args);	break;
        case 20: delete (Q3DateTimeEditBase*)xself;	break;
    }
}
class x_Q3Dns : public Q3Dns, 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<Q3Dns*>(this))) {
            const QMetaObject* xret = ((const x_Q3Dns*)this)->Q3Dns::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3Dns*)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<Q3Dns*>(this))) {
            void* xret = this->Q3Dns::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 = Q3Dns::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 = Q3Dns::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 = Q3Dns::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 = Q3Dns::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<Q3Dns*>(this))) {
            int xret = this->Q3Dns::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) {
        // Q3Dns* Q3Dns()
        x_Q3Dns* xret = new x_Q3Dns();
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Dns() : Q3Dns() {}
    static void x_9(Smoke::Stack x) {
        // Q3Dns* Q3Dns(const QString&, Q3Dns::RecordType)
        x_Q3Dns* xret = new x_Q3Dns(*(const QString*)x[1].s_class,(Q3Dns::RecordType)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Dns(const QString& x1, Q3Dns::RecordType x2) : Q3Dns(x1, x2) {}
    static void x_10(Smoke::Stack x) {
        // Q3Dns* Q3Dns(const QHostAddress&, Q3Dns::RecordType)
        x_Q3Dns* xret = new x_Q3Dns(*(const QHostAddress*)x[1].s_class,(Q3Dns::RecordType)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3Dns(const QHostAddress& x1, Q3Dns::RecordType x2) : Q3Dns(x1, x2) {}
    void x_11(Smoke::Stack x) {
        // virtual void setLabel(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Dns*>(this))) {
            this->Q3Dns::setLabel(*(const QString*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setLabel(*(const QString*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // virtual void setLabel(const QHostAddress&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Dns*>(this))) {
            this->Q3Dns::setLabel(*(const QHostAddress*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setLabel(*(const QHostAddress*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // QString label() const
        QString xret = ((const x_Q3Dns*)this)->Q3Dns::label();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_14(Smoke::Stack x) {
        // virtual void setRecordType(Q3Dns::RecordType)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3Dns*>(this))) {
            this->Q3Dns::setRecordType((Q3Dns::RecordType)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->setRecordType((Q3Dns::RecordType)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // Q3Dns::RecordType recordType() const
        Q3Dns::RecordType xret = ((const x_Q3Dns*)this)->Q3Dns::recordType();
        x[0].s_enum = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool isWorking() const
        bool xret = ((const x_Q3Dns*)this)->Q3Dns::isWorking();
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // Q3ValueList<QHostAddress> addresses() const
        Q3ValueList<QHostAddress> xret = ((const x_Q3Dns*)this)->Q3Dns::addresses();
        x[0].s_class = (void*)new Q3ValueList<QHostAddress>(xret);
    }
    void x_18(Smoke::Stack x) {
        // Q3ValueList<Q3Dns::MailServer> mailServers() const
        Q3ValueList<Q3Dns::MailServer> xret = ((const x_Q3Dns*)this)->Q3Dns::mailServers();
        x[0].s_class = (void*)new Q3ValueList<Q3Dns::MailServer>(xret);
    }
    void x_19(Smoke::Stack x) {
        // Q3ValueList<Q3Dns::Server> servers() const
        Q3ValueList<Q3Dns::Server> xret = ((const x_Q3Dns*)this)->Q3Dns::servers();
        x[0].s_class = (void*)new Q3ValueList<Q3Dns::Server>(xret);
    }
    void x_20(Smoke::Stack x) {
        // QStringList hostNames() const
        QStringList xret = ((const x_Q3Dns*)this)->Q3Dns::hostNames();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_21(Smoke::Stack x) {
        // QStringList texts() const
        QStringList xret = ((const x_Q3Dns*)this)->Q3Dns::texts();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_22(Smoke::Stack x) {
        // QString canonicalName() const
        QString xret = ((const x_Q3Dns*)this)->Q3Dns::canonicalName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_23(Smoke::Stack x) {
        // QStringList qualifiedNames() const
        QStringList xret = ((const x_Q3Dns*)this)->Q3Dns::qualifiedNames();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_24(Smoke::Stack x) {
        // void resultsReady()
        this->Q3Dns::resultsReady();
        (void)x; // noop (for compiler warning)
    }
    static void x_25(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3Dns::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_26(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3Dns::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_27(Smoke::Stack x) {
        // Q3Dns* Q3Dns(const QString&)
        x_Q3Dns* xret = new x_Q3Dns(*(const QString*)x[1].s_class,(Q3Dns::RecordType)Q3Dns::A);
        x[0].s_class = (void*)xret;
    }
    static void x_28(Smoke::Stack x) {
        // Q3Dns* Q3Dns(const QHostAddress&)
        x_Q3Dns* xret = new x_Q3Dns(*(const QHostAddress*)x[1].s_class,(Q3Dns::RecordType)Q3Dns::Ptr);
        x[0].s_class = (void*)xret;
    }
    void x_29(Smoke::Stack x) {
        // void setRecordType()
        this->Q3Dns::setRecordType((Q3Dns::RecordType)Q3Dns::A);
        (void)x; // noop (for compiler warning)
    }
    static void x_30(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3Dns::staticMetaObject;
    }
    static void x_31(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::None;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::A;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Aaaa;
    }
    static void x_34(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Mx;
    }
    static void x_35(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Srv;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Cname;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Ptr;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)Q3Dns::Txt;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1061, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3Dns::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1062, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3Dns::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(1067, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3Dns::qt_metacall(x1, x2, x3);
    }
    virtual void setLabel(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1071, (void*)this, x)) return;
        this->Q3Dns::setLabel(x1);
    }
    virtual void setLabel(const QHostAddress& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1072, (void*)this, x)) return;
        this->Q3Dns::setLabel(x1);
    }
    virtual void setRecordType(Q3Dns::RecordType x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(1074, (void*)this, x)) return;
        this->Q3Dns::setRecordType(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 46: //Q3Dns::RecordType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3Dns::RecordType;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3Dns::RecordType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3Dns::RecordType*)xdata = (Q3Dns::RecordType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3Dns::RecordType*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3Dns() { this->_binding->deleted(33, (void*)this); }
};
void xenum_Q3Dns(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3Dns::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3Dns(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3Dns *xself = (x_Q3Dns*)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_Q3Dns::x_3(args);	break;
        case 4: x_Q3Dns::x_4(args);	break;
        case 5: x_Q3Dns::x_5(args);	break;
        case 6: x_Q3Dns::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3Dns::x_8(args);	break;
        case 9: x_Q3Dns::x_9(args);	break;
        case 10: x_Q3Dns::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_Q3Dns::x_25(args);	break;
        case 26: x_Q3Dns::x_26(args);	break;
        case 27: x_Q3Dns::x_27(args);	break;
        case 28: x_Q3Dns::x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: x_Q3Dns::x_30(args);	break;
        case 31: x_Q3Dns::x_31(args);	break;
        case 32: x_Q3Dns::x_32(args);	break;
        case 33: x_Q3Dns::x_33(args);	break;
        case 34: x_Q3Dns::x_34(args);	break;
        case 35: x_Q3Dns::x_35(args);	break;
        case 36: x_Q3Dns::x_36(args);	break;
        case 37: x_Q3Dns::x_37(args);	break;
        case 38: x_Q3Dns::x_38(args);	break;
        case 39: delete (Q3Dns*)xself;	break;
    }
}
class x_Q3DockArea : public Q3DockArea, 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<Q3DockArea*>(this))) {
            const QMetaObject* xret = ((const x_Q3DockArea*)this)->Q3DockArea::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3DockArea*)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<Q3DockArea*>(this))) {
            void* xret = this->Q3DockArea::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 = Q3DockArea::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 = Q3DockArea::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 = Q3DockArea::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 = Q3DockArea::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<Q3DockArea*>(this))) {
            int xret = this->Q3DockArea::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) {
        // Q3DockArea* Q3DockArea(Qt::Orientation, Q3DockArea::HandlePosition, QWidget*, const char*)
        x_Q3DockArea* xret = new x_Q3DockArea((Qt::Orientation)x[1].s_enum,(Q3DockArea::HandlePosition)x[2].s_enum,(QWidget*)x[3].s_class,(const char*)x[4].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DockArea(Qt::Orientation x1, Q3DockArea::HandlePosition x2, QWidget* x3, const char* x4) : Q3DockArea(x1, x2, x3, x4) {}
    void x_9(Smoke::Stack x) {
        // void moveDockWindow(Q3DockWindow*, const QPoint&, const QRect&, bool)
        this->Q3DockArea::moveDockWindow((Q3DockWindow*)x[1].s_class,*(const QPoint*)x[2].s_class,*(const QRect*)x[3].s_class,(bool)x[4].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void removeDockWindow(Q3DockWindow*, bool, bool, bool)
        this->Q3DockArea::removeDockWindow((Q3DockWindow*)x[1].s_class,(bool)x[2].s_bool,(bool)x[3].s_bool,(bool)x[4].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void moveDockWindow(Q3DockWindow*, int)
        this->Q3DockArea::moveDockWindow((Q3DockWindow*)x[1].s_class,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // bool hasDockWindow(Q3DockWindow*, int*)
        bool xret = this->Q3DockArea::hasDockWindow((Q3DockWindow*)x[1].s_class,(int*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // void invalidNextOffset(Q3DockWindow*)
        this->Q3DockArea::invalidNextOffset((Q3DockWindow*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // Qt::Orientation orientation() const
        Qt::Orientation xret = ((const x_Q3DockArea*)this)->Q3DockArea::orientation();
        x[0].s_enum = xret;
    }
    void x_15(Smoke::Stack x) {
        // Q3DockArea::HandlePosition handlePosition() const
        Q3DockArea::HandlePosition xret = ((const x_Q3DockArea*)this)->Q3DockArea::handlePosition();
        x[0].s_enum = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool eventFilter(QObject*, QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockArea*>(this))) {
            bool xret = this->Q3DockArea::eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // bool isEmpty() const
        bool xret = ((const x_Q3DockArea*)this)->Q3DockArea::isEmpty();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_Q3DockArea*)this)->Q3DockArea::count();
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // QList<Q3DockWindow*> dockWindowList() const
        QList<Q3DockWindow*> xret = ((const x_Q3DockArea*)this)->Q3DockArea::dockWindowList();
        x[0].s_class = (void*)new QList<Q3DockWindow*>(xret);
    }
    void x_20(Smoke::Stack x) {
        // bool isDockWindowAccepted(Q3DockWindow*)
        bool xret = this->Q3DockArea::isDockWindowAccepted((Q3DockWindow*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_21(Smoke::Stack x) {
        // void setAcceptDockWindow(Q3DockWindow*, bool)
        this->Q3DockArea::setAcceptDockWindow((Q3DockWindow*)x[1].s_class,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void lineUp(bool)
        this->Q3DockArea::lineUp((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    static void x_23(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3DockArea::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_24(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3DockArea::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_25(Smoke::Stack x) {
        // Q3DockArea* Q3DockArea(Qt::Orientation)
        x_Q3DockArea* xret = new x_Q3DockArea((Qt::Orientation)x[1].s_enum,(Q3DockArea::HandlePosition)Q3DockArea::Normal,(QWidget*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_26(Smoke::Stack x) {
        // Q3DockArea* Q3DockArea(Qt::Orientation, Q3DockArea::HandlePosition)
        x_Q3DockArea* xret = new x_Q3DockArea((Qt::Orientation)x[1].s_enum,(Q3DockArea::HandlePosition)x[2].s_enum,(QWidget*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_27(Smoke::Stack x) {
        // Q3DockArea* Q3DockArea(Qt::Orientation, Q3DockArea::HandlePosition, QWidget*)
        x_Q3DockArea* xret = new x_Q3DockArea((Qt::Orientation)x[1].s_enum,(Q3DockArea::HandlePosition)x[2].s_enum,(QWidget*)x[3].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    void x_28(Smoke::Stack x) {
        // void removeDockWindow(Q3DockWindow*, bool, bool)
        this->Q3DockArea::removeDockWindow((Q3DockWindow*)x[1].s_class,(bool)x[2].s_bool,(bool)x[3].s_bool,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void moveDockWindow(Q3DockWindow*)
        this->Q3DockArea::moveDockWindow((Q3DockWindow*)x[1].s_class,(int)-1);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // bool hasDockWindow(Q3DockWindow*)
        bool xret = this->Q3DockArea::hasDockWindow((Q3DockWindow*)x[1].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    static void x_31(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3DockArea::staticMetaObject;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockArea::Normal;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockArea::Reverse;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1100, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3DockArea::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1101, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3DockArea::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(1106, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3DockArea::qt_metacall(x1, x2, x3);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(5253, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5254, (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(5255, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QWidget::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5256, (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(5259, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5260, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5261, (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(5262, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5263, (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(5264, (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(5265, (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(5266, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5267, (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(5268, (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(5269, (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(5270, (void*)this, x)) return;
        this->QWidget::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5271, (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(5272, (void*)this, x)) return;
        this->QWidget::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5273, (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(5274, (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(5275, (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(5276, (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(5277, (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(5278, (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(5279, (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(5280, (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(5281, (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(5282, (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(5283, (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(5284, (void*)this, x)) return;
        this->QWidget::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5286, (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(5287, (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(5288, (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(5289, (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(5290, (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(5291, (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(5292, (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(5293, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5294, (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(5258, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QWidget::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(1115, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3DockArea::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5252, (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(5257, (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(5285, (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 50: //Q3DockArea::HandlePosition
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3DockArea::HandlePosition;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3DockArea::HandlePosition*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3DockArea::HandlePosition*)xdata = (Q3DockArea::HandlePosition)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3DockArea::HandlePosition*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3DockArea() { this->_binding->deleted(36, (void*)this); }
};
void xenum_Q3DockArea(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3DockArea::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3DockArea(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3DockArea *xself = (x_Q3DockArea*)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_Q3DockArea::x_3(args);	break;
        case 4: x_Q3DockArea::x_4(args);	break;
        case 5: x_Q3DockArea::x_5(args);	break;
        case 6: x_Q3DockArea::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3DockArea::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: x_Q3DockArea::x_23(args);	break;
        case 24: x_Q3DockArea::x_24(args);	break;
        case 25: x_Q3DockArea::x_25(args);	break;
        case 26: x_Q3DockArea::x_26(args);	break;
        case 27: x_Q3DockArea::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: x_Q3DockArea::x_31(args);	break;
        case 32: x_Q3DockArea::x_32(args);	break;
        case 33: x_Q3DockArea::x_33(args);	break;
        case 34: delete (Q3DockArea*)xself;	break;
    }
}
class x_Q3DockWindow : public Q3DockWindow, 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<Q3DockWindow*>(this))) {
            const QMetaObject* xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3DockWindow*)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<Q3DockWindow*>(this))) {
            void* xret = this->Q3DockWindow::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 = Q3DockWindow::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 = Q3DockWindow::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 = Q3DockWindow::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 = Q3DockWindow::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<Q3DockWindow*>(this))) {
            int xret = this->Q3DockWindow::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) {
        // Q3DockWindow* Q3DockWindow(Q3DockWindow::Place, QWidget*, const char*, QFlags<Qt::WindowType>)
        x_Q3DockWindow* xret = new x_Q3DockWindow((Q3DockWindow::Place)x[1].s_enum,(QWidget*)x[2].s_class,(const char*)x[3].s_class,(QFlags<Qt::WindowType>)x[4].s_uint);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DockWindow(Q3DockWindow::Place x1, QWidget* x2, const char* x3, QFlags<Qt::WindowType> x4) : Q3DockWindow(x1, x2, x3, x4) {}
    static void x_9(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(QWidget*, const char*, QFlags<Qt::WindowType>)
        x_Q3DockWindow* xret = new x_Q3DockWindow((QWidget*)x[1].s_class,(const char*)x[2].s_class,(QFlags<Qt::WindowType>)x[3].s_uint);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DockWindow(QWidget* x1, const char* x2, QFlags<Qt::WindowType> x3) : Q3DockWindow(x1, x2, x3) {}
    void x_10(Smoke::Stack x) {
        // virtual void setWidget(QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setWidget((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setWidget((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_11(Smoke::Stack x) {
        // QWidget* widget() const
        QWidget* xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::widget();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // Q3DockWindow::Place place() const
        Q3DockWindow::Place xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::place();
        x[0].s_enum = xret;
    }
    void x_13(Smoke::Stack x) {
        // Q3DockArea* area() const
        Q3DockArea* xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::area();
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // virtual void setCloseMode(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setCloseMode((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setCloseMode((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // bool isCloseEnabled() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isCloseEnabled();
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // int closeMode() const
        int xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::closeMode();
        x[0].s_int = xret;
    }
    void x_17(Smoke::Stack x) {
        // virtual void setResizeEnabled(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setResizeEnabled((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setResizeEnabled((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_18(Smoke::Stack x) {
        // virtual void setMovingEnabled(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setMovingEnabled((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setMovingEnabled((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // bool isResizeEnabled() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isResizeEnabled();
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // bool isMovingEnabled() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isMovingEnabled();
        x[0].s_bool = xret;
    }
    void x_21(Smoke::Stack x) {
        // virtual void setHorizontallyStretchable(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setHorizontallyStretchable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setHorizontallyStretchable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_22(Smoke::Stack x) {
        // virtual void setVerticallyStretchable(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setVerticallyStretchable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setVerticallyStretchable((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_23(Smoke::Stack x) {
        // bool isHorizontallyStretchable() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isHorizontallyStretchable();
        x[0].s_bool = xret;
    }
    void x_24(Smoke::Stack x) {
        // bool isVerticallyStretchable() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isVerticallyStretchable();
        x[0].s_bool = xret;
    }
    void x_25(Smoke::Stack x) {
        // void setHorizontalStretchable(bool)
        this->Q3DockWindow::setHorizontalStretchable((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // void setVerticalStretchable(bool)
        this->Q3DockWindow::setVerticalStretchable((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_27(Smoke::Stack x) {
        // bool isHorizontalStretchable() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isHorizontalStretchable();
        x[0].s_bool = xret;
    }
    void x_28(Smoke::Stack x) {
        // bool isVerticalStretchable() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isVerticalStretchable();
        x[0].s_bool = xret;
    }
    void x_29(Smoke::Stack x) {
        // bool isStretchable() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::isStretchable();
        x[0].s_bool = xret;
    }
    void x_30(Smoke::Stack x) {
        // virtual void setOffset(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setOffset((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setOffset((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_31(Smoke::Stack x) {
        // int offset() const
        int xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::offset();
        x[0].s_int = xret;
    }
    void x_32(Smoke::Stack x) {
        // virtual void setFixedExtentWidth(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setFixedExtentWidth((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setFixedExtentWidth((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_33(Smoke::Stack x) {
        // virtual void setFixedExtentHeight(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setFixedExtentHeight((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setFixedExtentHeight((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_34(Smoke::Stack x) {
        // QSize fixedExtent() const
        QSize xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::fixedExtent();
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_35(Smoke::Stack x) {
        // virtual void setNewLine(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setNewLine((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setNewLine((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_36(Smoke::Stack x) {
        // bool newLine() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::newLine();
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // Qt::Orientation orientation() const
        Qt::Orientation xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::orientation();
        x[0].s_enum = xret;
    }
    void x_38(Smoke::Stack x) {
        // QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            QSize xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_Q3DockWindow*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_39(Smoke::Stack x) {
        // QSize minimumSize() const
        QSize xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::minimumSize();
        x[0].s_class = (void*)new QSize(xret);
    }
    void x_40(Smoke::Stack x) {
        // QSize minimumSizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            QSize xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_Q3DockWindow*)this)->minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_41(Smoke::Stack x) {
        // QBoxLayout* boxLayout()
        QBoxLayout* xret = this->Q3DockWindow::boxLayout();
        x[0].s_class = (void*)xret;
    }
    void x_42(Smoke::Stack x) {
        // virtual void setOpaqueMoving(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setOpaqueMoving((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setOpaqueMoving((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_43(Smoke::Stack x) {
        // bool opaqueMoving() const
        bool xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::opaqueMoving();
        x[0].s_bool = xret;
    }
    void x_44(Smoke::Stack x) {
        // bool eventFilter(QObject*, QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            bool xret = this->Q3DockWindow::eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_45(Smoke::Stack x) {
        // QString windowTitle() const
        QString xret = ((const x_Q3DockWindow*)this)->Q3DockWindow::windowTitle();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_46(Smoke::Stack x) {
        // void orientationChanged(Qt::Orientation)
        this->Q3DockWindow::orientationChanged((Qt::Orientation)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_47(Smoke::Stack x) {
        // void placeChanged(Q3DockWindow::Place)
        this->Q3DockWindow::placeChanged((Q3DockWindow::Place)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // void visibilityChanged(bool)
        this->Q3DockWindow::visibilityChanged((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_49(Smoke::Stack x) {
        // virtual void undock(QWidget*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::undock((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->undock((QWidget*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_50(Smoke::Stack x) {
        // virtual void undock()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::undock();
            (void)x; // noop (for compiler warning)
        } else {
            this->undock();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_51(Smoke::Stack x) {
        // virtual void dock()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::dock();
            (void)x; // noop (for compiler warning)
        } else {
            this->dock();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_52(Smoke::Stack x) {
        // virtual void setOrientation(Qt::Orientation)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::setOrientation((Qt::Orientation)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->setOrientation((Qt::Orientation)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_53(Smoke::Stack x) {
        // void resizeEvent(QResizeEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::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_54(Smoke::Stack x) {
        // void showEvent(QShowEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::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_55(Smoke::Stack x) {
        // void hideEvent(QHideEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::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_56(Smoke::Stack x) {
        // void contextMenuEvent(QContextMenuEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::contextMenuEvent((QContextMenuEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->contextMenuEvent((QContextMenuEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_57(Smoke::Stack x) {
        // void drawFrame(QPainter*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::drawFrame((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->drawFrame((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_58(Smoke::Stack x) {
        // void drawContents(QPainter*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            this->Q3DockWindow::drawContents((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->drawContents((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_59(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DockWindow*>(this))) {
            bool xret = this->Q3DockWindow::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_60(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3DockWindow::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_61(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3DockWindow::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_62(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow()
        x_Q3DockWindow* xret = new x_Q3DockWindow((Q3DockWindow::Place)Q3DockWindow::InDock,(QWidget*)0,(const char*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_63(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(Q3DockWindow::Place)
        x_Q3DockWindow* xret = new x_Q3DockWindow((Q3DockWindow::Place)x[1].s_enum,(QWidget*)0,(const char*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_64(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(Q3DockWindow::Place, QWidget*)
        x_Q3DockWindow* xret = new x_Q3DockWindow((Q3DockWindow::Place)x[1].s_enum,(QWidget*)x[2].s_class,(const char*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_65(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(Q3DockWindow::Place, QWidget*, const char*)
        x_Q3DockWindow* xret = new x_Q3DockWindow((Q3DockWindow::Place)x[1].s_enum,(QWidget*)x[2].s_class,(const char*)x[3].s_class,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_66(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(QWidget*)
        x_Q3DockWindow* xret = new x_Q3DockWindow((QWidget*)x[1].s_class,(const char*)0,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_67(Smoke::Stack x) {
        // Q3DockWindow* Q3DockWindow(QWidget*, const char*)
        x_Q3DockWindow* xret = new x_Q3DockWindow((QWidget*)x[1].s_class,(const char*)x[2].s_class,(QFlags<Qt::WindowType>)0);
        x[0].s_class = (void*)xret;
    }
    static void x_68(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3DockWindow::staticMetaObject;
    }
    static void x_69(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::InDock;
    }
    static void x_70(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::OutsideDock;
    }
    static void x_71(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::Never;
    }
    static void x_72(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::Docked;
    }
    static void x_73(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::Undocked;
    }
    static void x_74(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DockWindow::Always;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1134, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3DockWindow::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1135, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3DockWindow::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(1140, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3DockWindow::qt_metacall(x1, x2, x3);
    }
    virtual void setWidget(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1143, (void*)this, x)) return;
        this->Q3DockWindow::setWidget(x1);
    }
    virtual void setCloseMode(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1147, (void*)this, x)) return;
        this->Q3DockWindow::setCloseMode(x1);
    }
    virtual void setResizeEnabled(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1150, (void*)this, x)) return;
        this->Q3DockWindow::setResizeEnabled(x1);
    }
    virtual void setMovingEnabled(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1151, (void*)this, x)) return;
        this->Q3DockWindow::setMovingEnabled(x1);
    }
    virtual void setHorizontallyStretchable(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1154, (void*)this, x)) return;
        this->Q3DockWindow::setHorizontallyStretchable(x1);
    }
    virtual void setVerticallyStretchable(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1155, (void*)this, x)) return;
        this->Q3DockWindow::setVerticallyStretchable(x1);
    }
    virtual void setOffset(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1163, (void*)this, x)) return;
        this->Q3DockWindow::setOffset(x1);
    }
    virtual void setFixedExtentWidth(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1165, (void*)this, x)) return;
        this->Q3DockWindow::setFixedExtentWidth(x1);
    }
    virtual void setFixedExtentHeight(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(1166, (void*)this, x)) return;
        this->Q3DockWindow::setFixedExtentHeight(x1);
    }
    virtual void setNewLine(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1168, (void*)this, x)) return;
        this->Q3DockWindow::setNewLine(x1);
    }
    virtual void setOpaqueMoving(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1175, (void*)this, x)) return;
        this->Q3DockWindow::setOpaqueMoving(x1);
    }
    virtual void undock(QWidget* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1182, (void*)this, x)) return;
        this->Q3DockWindow::undock(x1);
    }
    virtual void undock() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1183, (void*)this, x)) return;
        this->Q3DockWindow::undock();
    }
    virtual void dock() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1184, (void*)this, x)) return;
        this->Q3DockWindow::dock();
    }
    virtual void setOrientation(Qt::Orientation x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(1185, (void*)this, x)) return;
        this->Q3DockWindow::setOrientation(x1);
    }
    virtual void frameChanged() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1393, (void*)this, x)) return;
        this->Q3Frame::frameChanged();
    }
    virtual void drawFrame(QPainter* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1190, (void*)this, x)) return;
        this->Q3DockWindow::drawFrame(x1);
    }
    virtual void drawContents(QPainter* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1191, (void*)this, x)) return;
        this->Q3DockWindow::drawContents(x1);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(5253, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1171, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3DockWindow::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1173, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->Q3DockWindow::minimumSizeHint();
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(5256, (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(5259, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5260, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5261, (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(5262, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5263, (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(5264, (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(5265, (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(5266, (void*)this, x)) return;
        this->QWidget::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5267, (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(5268, (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(5269, (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(1391, (void*)this, x)) return;
        this->Q3Frame::paintEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5271, (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(1186, (void*)this, x)) return;
        this->Q3DockWindow::resizeEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5273, (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(1189, (void*)this, x)) return;
        this->Q3DockWindow::contextMenuEvent(x1);
    }
    virtual void tabletEvent(QTabletEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5275, (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(5276, (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(5277, (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(5278, (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(5279, (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(5280, (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(1187, (void*)this, x)) return;
        this->Q3DockWindow::showEvent(x1);
    }
    virtual void hideEvent(QHideEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1188, (void*)this, x)) return;
        this->Q3DockWindow::hideEvent(x1);
    }
    virtual bool x11Event(_XEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5283, (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(5140, (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(5286, (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(5287, (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(5288, (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(5289, (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(5290, (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(5291, (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(5292, (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(5293, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5294, (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(1192, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3DockWindow::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(1177, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3DockWindow::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(5252, (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(5257, (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(5285, (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 53: //Q3DockWindow::Place
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3DockWindow::Place;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3DockWindow::Place*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3DockWindow::Place*)xdata = (Q3DockWindow::Place)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3DockWindow::Place*)xdata;
                    break;
            }
            break;
        case 52: //Q3DockWindow::CloseMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3DockWindow::CloseMode;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3DockWindow::CloseMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3DockWindow::CloseMode*)xdata = (Q3DockWindow::CloseMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3DockWindow::CloseMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3DockWindow() { this->_binding->deleted(37, (void*)this); }
};
void xenum_Q3DockWindow(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3DockWindow::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3DockWindow(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3DockWindow *xself = (x_Q3DockWindow*)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_Q3DockWindow::x_3(args);	break;
        case 4: x_Q3DockWindow::x_4(args);	break;
        case 5: x_Q3DockWindow::x_5(args);	break;
        case 6: x_Q3DockWindow::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3DockWindow::x_8(args);	break;
        case 9: x_Q3DockWindow::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: x_Q3DockWindow::x_60(args);	break;
        case 61: x_Q3DockWindow::x_61(args);	break;
        case 62: x_Q3DockWindow::x_62(args);	break;
        case 63: x_Q3DockWindow::x_63(args);	break;
        case 64: x_Q3DockWindow::x_64(args);	break;
        case 65: x_Q3DockWindow::x_65(args);	break;
        case 66: x_Q3DockWindow::x_66(args);	break;
        case 67: x_Q3DockWindow::x_67(args);	break;
        case 68: x_Q3DockWindow::x_68(args);	break;
        case 69: x_Q3DockWindow::x_69(args);	break;
        case 70: x_Q3DockWindow::x_70(args);	break;
        case 71: x_Q3DockWindow::x_71(args);	break;
        case 72: x_Q3DockWindow::x_72(args);	break;
        case 73: x_Q3DockWindow::x_73(args);	break;
        case 74: x_Q3DockWindow::x_74(args);	break;
        case 75: delete (Q3DockWindow*)xself;	break;
    }
}
class x_Q3DragObject : public Q3DragObject, 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<Q3DragObject*>(this))) {
            const QMetaObject* xret = ((const x_Q3DragObject*)this)->Q3DragObject::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_Q3DragObject*)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<Q3DragObject*>(this))) {
            void* xret = this->Q3DragObject::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 = Q3DragObject::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 = Q3DragObject::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 = Q3DragObject::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 = Q3DragObject::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<Q3DragObject*>(this))) {
            int xret = this->Q3DragObject::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) {
        // Q3DragObject* Q3DragObject(QWidget*, const char*)
        x_Q3DragObject* xret = new x_Q3DragObject((QWidget*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DragObject(QWidget* x1, const char* x2) : Q3DragObject(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // bool drag()
        bool xret = this->Q3DragObject::drag();
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // bool dragMove()
        bool xret = this->Q3DragObject::dragMove();
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // void dragCopy()
        this->Q3DragObject::dragCopy();
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void dragLink()
        this->Q3DragObject::dragLink();
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // virtual void setPixmap(QPixmap)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DragObject*>(this))) {
            this->Q3DragObject::setPixmap(*(QPixmap*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setPixmap(*(QPixmap*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_14(Smoke::Stack x) {
        // virtual void setPixmap(QPixmap, const QPoint&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DragObject*>(this))) {
            this->Q3DragObject::setPixmap(*(QPixmap*)x[1].s_class,*(const QPoint*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setPixmap(*(QPixmap*)x[1].s_class,*(const QPoint*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // QPixmap pixmap() const
        QPixmap xret = ((const x_Q3DragObject*)this)->Q3DragObject::pixmap();
        x[0].s_class = (void*)new QPixmap(xret);
    }
    void x_16(Smoke::Stack x) {
        // QPoint pixmapHotSpot() const
        QPoint xret = ((const x_Q3DragObject*)this)->Q3DragObject::pixmapHotSpot();
        x[0].s_class = (void*)new QPoint(xret);
    }
    void x_17(Smoke::Stack x) {
        // QWidget* source()
        QWidget* xret = this->Q3DragObject::source();
        x[0].s_class = (void*)xret;
    }
    static void x_18(Smoke::Stack x) {
        // static QWidget* target()
        QWidget* xret = Q3DragObject::target();
        x[0].s_class = (void*)xret;
    }
    void x_19(Smoke::Stack x) {
        // virtual bool drag(Q3DragObject::DragMode)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<Q3DragObject*>(this))) {
            bool xret = this->Q3DragObject::drag((Q3DragObject::DragMode)x[1].s_enum);
            x[0].s_bool = xret;
        } else {
            bool xret = this->drag((Q3DragObject::DragMode)x[1].s_enum);
            x[0].s_bool = xret;
        }
    }
    static void x_20(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = Q3DragObject::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_21(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = Q3DragObject::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // Q3DragObject* Q3DragObject()
        x_Q3DragObject* xret = new x_Q3DragObject((QWidget*)0,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_23(Smoke::Stack x) {
        // Q3DragObject* Q3DragObject(QWidget*)
        x_Q3DragObject* xret = new x_Q3DragObject((QWidget*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_24(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&Q3DragObject::staticMetaObject;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DragObject::DragDefault;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DragObject::DragCopy;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DragObject::DragMove;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DragObject::DragLink;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)Q3DragObject::DragCopyOrMove;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1209, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->Q3DragObject::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1210, (void*)this, x)) return (void*)x[0].s_class;
        return this->Q3DragObject::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(1215, (void*)this, x)) return (int)x[0].s_int;
        return this->Q3DragObject::qt_metacall(x1, x2, x3);
    }
    virtual void setPixmap(QPixmap x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)new QPixmap(x1);
        if (this->_binding->callMethod(1221, (void*)this, x)) return;
        this->Q3DragObject::setPixmap(x1);
    }
    virtual void setPixmap(QPixmap x1, const QPoint& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)new QPixmap(x1);
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(1222, (void*)this, x)) return;
        this->Q3DragObject::setPixmap(x1, x2);
    }
    virtual bool drag(Q3DragObject::DragMode x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(1227, (void*)this, x)) return (bool)x[0].s_bool;
        return this->Q3DragObject::drag(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5238, (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(5239, (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(5240, (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(5241, (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(5242, (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(5243, (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(5244, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual const char* format(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        this->_binding->callMethod(5232, (void*)this, x, true /*pure virtual*/);
        return (const char*)x[0].s_class;
    }
    virtual bool provides(const char* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(5233, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QMimeSource::provides(x1);
    }
    virtual QByteArray encodedData(const char* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(5234, (void*)this, x, true /*pure virtual*/);
        QByteArray* xptr = (QByteArray*)x[0].s_class;
        QByteArray xret(*xptr);
        delete xptr;
        return xret;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 55: //Q3DragObject::DragMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new Q3DragObject::DragMode;
                    break;
                case Smoke::EnumDelete:
                    delete (Q3DragObject::DragMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(Q3DragObject::DragMode*)xdata = (Q3DragObject::DragMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(Q3DragObject::DragMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_Q3DragObject() { this->_binding->deleted(38, (void*)this); }
};
void xenum_Q3DragObject(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_Q3DragObject::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_Q3DragObject(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3DragObject *xself = (x_Q3DragObject*)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_Q3DragObject::x_3(args);	break;
        case 4: x_Q3DragObject::x_4(args);	break;
        case 5: x_Q3DragObject::x_5(args);	break;
        case 6: x_Q3DragObject::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_Q3DragObject::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: x_Q3DragObject::x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_Q3DragObject::x_20(args);	break;
        case 21: x_Q3DragObject::x_21(args);	break;
        case 22: x_Q3DragObject::x_22(args);	break;
        case 23: x_Q3DragObject::x_23(args);	break;
        case 24: x_Q3DragObject::x_24(args);	break;
        case 25: x_Q3DragObject::x_25(args);	break;
        case 26: x_Q3DragObject::x_26(args);	break;
        case 27: x_Q3DragObject::x_27(args);	break;
        case 28: x_Q3DragObject::x_28(args);	break;
        case 29: x_Q3DragObject::x_29(args);	break;
        case 30: delete (Q3DragObject*)xself;	break;
    }
}
class x_Q3DropSite : public Q3DropSite, 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) {
        // Q3DropSite* Q3DropSite(QWidget*)
        x_Q3DropSite* xret = new x_Q3DropSite((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DropSite(QWidget* x1) : Q3DropSite(x1) {}
    static void x_2(Smoke::Stack x) {
        // Q3DropSite* Q3DropSite(const Q3DropSite&)
        x_Q3DropSite* xret = new x_Q3DropSite(*(const Q3DropSite*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_Q3DropSite(const Q3DropSite& x1) : Q3DropSite(x1) {}
    ~x_Q3DropSite() { this->_binding->deleted(39, (void*)this); }
};
void xcall_Q3DropSite(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_Q3DropSite *xself = (x_Q3DropSite*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_Q3DropSite::x_1(args);	break;
        case 2: x_Q3DropSite::x_2(args);	break;
        case 3: delete (Q3DropSite*)xself;	break;
    }
}

}
