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

#include <smoke.h>
#include <qwt_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqwt {

class x_QwtAbstractScale : public QwtAbstractScale, 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) {
        // QwtAbstractScale* QwtAbstractScale()
        x_QwtAbstractScale* xret = new x_QwtAbstractScale();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAbstractScale() : QwtAbstractScale() {}
    void x_2(Smoke::Stack x) {
        // void setScale(double, double, double)
        this->QwtAbstractScale::setScale((double)x[1].s_double,(double)x[2].s_double,(double)x[3].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // void setScale(const QwtDoubleInterval&, double)
        this->QwtAbstractScale::setScale(*(const QwtDoubleInterval*)x[1].s_class,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // void setScale(const QwtScaleDiv&)
        this->QwtAbstractScale::setScale(*(const QwtScaleDiv*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // void setAutoScale()
        this->QwtAbstractScale::setAutoScale();
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // bool autoScale() const
        bool xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::autoScale();
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // void setScaleMaxMajor(int)
        this->QwtAbstractScale::setScaleMaxMajor((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // int scaleMaxMinor() const
        int xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::scaleMaxMinor();
        x[0].s_int = xret;
    }
    void x_9(Smoke::Stack x) {
        // void setScaleMaxMinor(int)
        this->QwtAbstractScale::setScaleMaxMinor((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // int scaleMaxMajor() const
        int xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::scaleMaxMajor();
        x[0].s_int = xret;
    }
    void x_11(Smoke::Stack x) {
        // void setScaleEngine(QwtScaleEngine*)
        this->QwtAbstractScale::setScaleEngine((QwtScaleEngine*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // const QwtScaleEngine* scaleEngine() const
        const QwtScaleEngine* xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::scaleEngine();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // QwtScaleEngine* scaleEngine()
        QwtScaleEngine* xret = this->QwtAbstractScale::scaleEngine();
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // const QwtScaleMap& scaleMap() const
        const QwtScaleMap& xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::scaleMap();
        x[0].s_class = (void*)&xret;
    }
    void x_15(Smoke::Stack x) {
        // void rescale(double, double, double)
        this->QwtAbstractScale::rescale((double)x[1].s_double,(double)x[2].s_double,(double)x[3].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void setAbstractScaleDraw(QwtAbstractScaleDraw*)
        this->QwtAbstractScale::setAbstractScaleDraw((QwtAbstractScaleDraw*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // const QwtAbstractScaleDraw* abstractScaleDraw() const
        const QwtAbstractScaleDraw* xret = ((const x_QwtAbstractScale*)this)->QwtAbstractScale::abstractScaleDraw();
        x[0].s_class = (void*)xret;
    }
    void x_18(Smoke::Stack x) {
        // QwtAbstractScaleDraw* abstractScaleDraw()
        QwtAbstractScaleDraw* xret = this->QwtAbstractScale::abstractScaleDraw();
        x[0].s_class = (void*)xret;
    }
    void x_19(Smoke::Stack x) {
        // virtual void scaleChange()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractScale*>(this))) {
            this->QwtAbstractScale::scaleChange();
            (void)x; // noop (for compiler warning)
        } else {
            this->scaleChange();
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_20(Smoke::Stack x) {
        // QwtAbstractScale* QwtAbstractScale(const QwtAbstractScale&)
        x_QwtAbstractScale* xret = new x_QwtAbstractScale(*(const QwtAbstractScale*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAbstractScale(const QwtAbstractScale& x1) : QwtAbstractScale(x1) {}
    void x_21(Smoke::Stack x) {
        // void setScale(double, double)
        this->QwtAbstractScale::setScale((double)x[1].s_double,(double)x[2].s_double,(double)0.0);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void setScale(const QwtDoubleInterval&)
        this->QwtAbstractScale::setScale(*(const QwtDoubleInterval*)x[1].s_class,(double)0.0);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void rescale(double, double)
        this->QwtAbstractScale::rescale((double)x[1].s_double,(double)x[2].s_double,(double)0.0);
        (void)x; // noop (for compiler warning)
    }
    virtual void scaleChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(106, (void*)this, x)) return;
        this->QwtAbstractScale::scaleChange();
    }
    ~x_QwtAbstractScale() { this->_binding->deleted(59, (void*)this); }
};
void xcall_QwtAbstractScale(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtAbstractScale *xself = (x_QwtAbstractScale*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtAbstractScale::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_QwtAbstractScale::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: delete (QwtAbstractScale*)xself;	break;
    }
}
class x_QwtAbstractScaleDraw : public QwtAbstractScaleDraw, 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) {
        // QwtAbstractScaleDraw* QwtAbstractScaleDraw()
        x_QwtAbstractScaleDraw* xret = new x_QwtAbstractScaleDraw();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAbstractScaleDraw() : QwtAbstractScaleDraw() {}
    static void x_2(Smoke::Stack x) {
        // QwtAbstractScaleDraw* QwtAbstractScaleDraw(const QwtAbstractScaleDraw&)
        x_QwtAbstractScaleDraw* xret = new x_QwtAbstractScaleDraw(*(const QwtAbstractScaleDraw*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAbstractScaleDraw(const QwtAbstractScaleDraw& x1) : QwtAbstractScaleDraw(x1) {}
    void x_3(Smoke::Stack x) {
        // QwtAbstractScaleDraw& operator=(const QwtAbstractScaleDraw&)
        QwtAbstractScaleDraw& xret = this->QwtAbstractScaleDraw::operator=(*(const QwtAbstractScaleDraw*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // void setScaleDiv(const QwtScaleDiv&)
        this->QwtAbstractScaleDraw::setScaleDiv(*(const QwtScaleDiv*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // const QwtScaleDiv& scaleDiv() const
        const QwtScaleDiv& xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::scaleDiv();
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // void setTransformation(QwtScaleTransformation*)
        this->QwtAbstractScaleDraw::setTransformation((QwtScaleTransformation*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // const QwtScaleMap& map() const
        const QwtScaleMap& xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::map();
        x[0].s_class = (void*)&xret;
    }
    void x_8(Smoke::Stack x) {
        // void enableComponent(QwtAbstractScaleDraw::ScaleComponent, bool)
        this->QwtAbstractScaleDraw::enableComponent((QwtAbstractScaleDraw::ScaleComponent)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // bool hasComponent(QwtAbstractScaleDraw::ScaleComponent) const
        bool xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::hasComponent((QwtAbstractScaleDraw::ScaleComponent)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // void setTickLength(QwtScaleDiv::TickType, int)
        this->QwtAbstractScaleDraw::setTickLength((QwtScaleDiv::TickType)x[1].s_enum,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // int tickLength(QwtScaleDiv::TickType) const
        int xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::tickLength((QwtScaleDiv::TickType)x[1].s_enum);
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // int majTickLength() const
        int xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::majTickLength();
        x[0].s_int = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setSpacing(int)
        this->QwtAbstractScaleDraw::setSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // int spacing() const
        int xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::spacing();
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual void draw(QPainter*, const QPalette&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractScaleDraw*>(this))) {
            ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::draw((QPainter*)x[1].s_class,*(const QPalette*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtAbstractScaleDraw*)this)->draw((QPainter*)x[1].s_class,*(const QPalette*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual QwtText label(double) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractScaleDraw*>(this))) {
            QwtText xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::label((double)x[1].s_double);
            x[0].s_class = (void*)new QwtText(xret);
        } else {
            QwtText xret = ((const x_QwtAbstractScaleDraw*)this)->label((double)x[1].s_double);
            x[0].s_class = (void*)new QwtText(xret);
        }
    }
    void x_17(Smoke::Stack x) {
        // virtual int extent(const QPen&, const QFont&) const = 0
        int xret = ((const x_QwtAbstractScaleDraw*)this)->extent(*(const QPen*)x[1].s_class,*(const QFont*)x[2].s_class);
        x[0].s_int = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setMinimumExtent(int)
        this->QwtAbstractScaleDraw::setMinimumExtent((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // int minimumExtent() const
        int xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::minimumExtent();
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // QwtScaleMap& scaleMap()
        QwtScaleMap& xret = this->QwtAbstractScaleDraw::scaleMap();
        x[0].s_class = (void*)&xret;
    }
    void x_21(Smoke::Stack x) {
        // virtual void drawTick(QPainter*, double, int) const = 0
        ((const x_QwtAbstractScaleDraw*)this)->drawTick((QPainter*)x[1].s_class,(double)x[2].s_double,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // virtual void drawBackbone(QPainter*) const = 0
        ((const x_QwtAbstractScaleDraw*)this)->drawBackbone((QPainter*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // virtual void drawLabel(QPainter*, double) const = 0
        ((const x_QwtAbstractScaleDraw*)this)->drawLabel((QPainter*)x[1].s_class,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void invalidateCache()
        this->QwtAbstractScaleDraw::invalidateCache();
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // const QwtText& tickLabel(const QFont&, double) const
        const QwtText& xret = ((const x_QwtAbstractScaleDraw*)this)->QwtAbstractScaleDraw::tickLabel(*(const QFont*)x[1].s_class,(double)x[2].s_double);
        x[0].s_class = (void*)&xret;
    }
    void x_26(Smoke::Stack x) {
        // void enableComponent(QwtAbstractScaleDraw::ScaleComponent)
        this->QwtAbstractScaleDraw::enableComponent((QwtAbstractScaleDraw::ScaleComponent)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractScaleDraw::Backbone;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractScaleDraw::Ticks;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractScaleDraw::Labels;
    }
    virtual void draw(QPainter* x1, const QPalette& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(126, (void*)this, x)) return;
        this->QwtAbstractScaleDraw::draw(x1, x2);
    }
    virtual QwtText label(double x1) const {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(127, (void*)this, x)) {
            QwtText* xptr = (QwtText*)x[0].s_class;
            QwtText xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtAbstractScaleDraw::label(x1);
    }
    virtual int extent(const QPen& x1, const QFont& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        this->_binding->callMethod(128, (void*)this, x, true /*pure virtual*/);
        return (int)x[0].s_int;
    }
    virtual void drawTick(QPainter* x1, double x2, int x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_double = x2;
        x[3].s_int = x3;
        this->_binding->callMethod(132, (void*)this, x, true /*pure virtual*/);
    }
    virtual void drawBackbone(QPainter* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(133, (void*)this, x, true /*pure virtual*/);
    }
    virtual void drawLabel(QPainter* x1, double x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_double = x2;
        this->_binding->callMethod(134, (void*)this, x, true /*pure virtual*/);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 153: //QwtAbstractScaleDraw::ScaleComponent
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtAbstractScaleDraw::ScaleComponent;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtAbstractScaleDraw::ScaleComponent*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtAbstractScaleDraw::ScaleComponent*)xdata = (QwtAbstractScaleDraw::ScaleComponent)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtAbstractScaleDraw::ScaleComponent*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtAbstractScaleDraw() { this->_binding->deleted(60, (void*)this); }
};
void xenum_QwtAbstractScaleDraw(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtAbstractScaleDraw::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtAbstractScaleDraw(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtAbstractScaleDraw *xself = (x_QwtAbstractScaleDraw*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtAbstractScaleDraw::x_1(args);	break;
        case 2: x_QwtAbstractScaleDraw::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: x_QwtAbstractScaleDraw::x_27(args);	break;
        case 28: x_QwtAbstractScaleDraw::x_28(args);	break;
        case 29: x_QwtAbstractScaleDraw::x_29(args);	break;
        case 30: delete (QwtAbstractScaleDraw*)xself;	break;
    }
}
class x_QwtAbstractSlider : public QwtAbstractSlider, 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<QwtAbstractSlider*>(this))) {
            const QMetaObject* xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QwtAbstractSlider*)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<QwtAbstractSlider*>(this))) {
            void* xret = this->QwtAbstractSlider::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 = QwtAbstractSlider::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 = QwtAbstractSlider::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 = QwtAbstractSlider::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 = QwtAbstractSlider::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<QwtAbstractSlider*>(this))) {
            int xret = this->QwtAbstractSlider::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) {
        // QwtAbstractSlider* QwtAbstractSlider(Qt::Orientation, QWidget*)
        x_QwtAbstractSlider* xret = new x_QwtAbstractSlider((Qt::Orientation)x[1].s_enum,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAbstractSlider(Qt::Orientation x1, QWidget* x2) : QwtAbstractSlider(x1, x2) {}
    void x_9(Smoke::Stack x) {
        // void setUpdateTime(int)
        this->QwtAbstractSlider::setUpdateTime((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void stopMoving()
        this->QwtAbstractSlider::stopMoving();
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setTracking(bool)
        this->QwtAbstractSlider::setTracking((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // virtual void setMass(double)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::setMass((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        } else {
            this->setMass((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // virtual double mass() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            double xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::mass();
            x[0].s_double = xret;
        } else {
            double xret = ((const x_QwtAbstractSlider*)this)->mass();
            x[0].s_double = xret;
        }
    }
    void x_14(Smoke::Stack x) {
        // virtual void setOrientation(Qt::Orientation)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::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_15(Smoke::Stack x) {
        // Qt::Orientation orientation() const
        Qt::Orientation xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::orientation();
        x[0].s_enum = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool isReadOnly() const
        bool xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::isReadOnly();
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // bool isValid() const
        bool xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::isValid();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void setValid(bool)
        this->QwtAbstractSlider::setValid((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // virtual void setValue(double)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::setValue((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        } else {
            this->setValue((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_20(Smoke::Stack x) {
        // virtual void fitValue(double)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::fitValue((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        } else {
            this->fitValue((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_21(Smoke::Stack x) {
        // virtual void incValue(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::incValue((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->incValue((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_22(Smoke::Stack x) {
        // virtual void setReadOnly(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::setReadOnly((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setReadOnly((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_23(Smoke::Stack x) {
        // void valueChanged(double)
        this->QwtAbstractSlider::valueChanged((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void sliderPressed()
        this->QwtAbstractSlider::sliderPressed();
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void sliderReleased()
        this->QwtAbstractSlider::sliderReleased();
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // void sliderMoved(double)
        this->QwtAbstractSlider::sliderMoved((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_27(Smoke::Stack x) {
        // virtual void setPosition(const QPoint&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::setPosition(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setPosition(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_28(Smoke::Stack x) {
        // virtual void valueChange()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::valueChange();
            (void)x; // noop (for compiler warning)
        } else {
            this->valueChange();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_29(Smoke::Stack x) {
        // virtual void timerEvent(QTimerEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::timerEvent((QTimerEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->timerEvent((QTimerEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_30(Smoke::Stack x) {
        // virtual void mousePressEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mousePressEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_31(Smoke::Stack x) {
        // virtual void mouseReleaseEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseReleaseEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_32(Smoke::Stack x) {
        // virtual void mouseMoveEvent(QMouseEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->mouseMoveEvent((QMouseEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_33(Smoke::Stack x) {
        // virtual void keyPressEvent(QKeyEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::keyPressEvent((QKeyEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->keyPressEvent((QKeyEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_34(Smoke::Stack x) {
        // virtual void wheelEvent(QWheelEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAbstractSlider*>(this))) {
            this->QwtAbstractSlider::wheelEvent((QWheelEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->wheelEvent((QWheelEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_35(Smoke::Stack x) {
        // virtual double getValue(const QPoint&) = 0
        double xret = this->getValue(*(const QPoint*)x[1].s_class);
        x[0].s_double = xret;
    }
    void x_36(Smoke::Stack x) {
        // virtual void getScrollMode(const QPoint&, int&, int&) = 0
        this->getScrollMode(*(const QPoint*)x[1].s_class,*(int*)x[2].s_class,*(int*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // void setMouseOffset(double)
        this->QwtAbstractSlider::setMouseOffset((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // double mouseOffset() const
        double xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::mouseOffset();
        x[0].s_double = xret;
    }
    void x_39(Smoke::Stack x) {
        // int scrollMode() const
        int xret = ((const x_QwtAbstractSlider*)this)->QwtAbstractSlider::scrollMode();
        x[0].s_int = xret;
    }
    static void x_40(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QwtAbstractSlider::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_41(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QwtAbstractSlider::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_42(Smoke::Stack x) {
        // QwtAbstractSlider* QwtAbstractSlider(Qt::Orientation)
        x_QwtAbstractSlider* xret = new x_QwtAbstractSlider((Qt::Orientation)x[1].s_enum,(QWidget*)NULL);
        x[0].s_class = (void*)xret;
    }
    static void x_43(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QwtAbstractSlider::staticMetaObject;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractSlider::ScrNone;
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractSlider::ScrMouse;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractSlider::ScrTimer;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractSlider::ScrDirect;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAbstractSlider::ScrPage;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(142, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QwtAbstractSlider::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(143, (void*)this, x)) return (void*)x[0].s_class;
        return this->QwtAbstractSlider::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(148, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtAbstractSlider::qt_metacall(x1, x2, x3);
    }
    virtual void setMass(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(153, (void*)this, x)) return;
        this->QwtAbstractSlider::setMass(x1);
    }
    virtual double mass() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(154, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtAbstractSlider::mass();
    }
    virtual void setOrientation(Qt::Orientation x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(155, (void*)this, x)) return;
        this->QwtAbstractSlider::setOrientation(x1);
    }
    virtual void setValue(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(160, (void*)this, x)) return;
        this->QwtAbstractSlider::setValue(x1);
    }
    virtual void fitValue(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(161, (void*)this, x)) return;
        this->QwtAbstractSlider::fitValue(x1);
    }
    virtual void incValue(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(162, (void*)this, x)) return;
        this->QwtAbstractSlider::incValue(x1);
    }
    virtual void setReadOnly(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(163, (void*)this, x)) return;
        this->QwtAbstractSlider::setReadOnly(x1);
    }
    virtual void setPosition(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(168, (void*)this, x)) return;
        this->QwtAbstractSlider::setPosition(x1);
    }
    virtual void valueChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(169, (void*)this, x)) return;
        this->QwtAbstractSlider::valueChange();
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(170, (void*)this, x)) return;
        this->QwtAbstractSlider::timerEvent(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(171, (void*)this, x)) return;
        this->QwtAbstractSlider::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(172, (void*)this, x)) return;
        this->QwtAbstractSlider::mouseReleaseEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(173, (void*)this, x)) return;
        this->QwtAbstractSlider::mouseMoveEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(174, (void*)this, x)) return;
        this->QwtAbstractSlider::keyPressEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(175, (void*)this, x)) return;
        this->QwtAbstractSlider::wheelEvent(x1);
    }
    virtual double getValue(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(176, (void*)this, x, true /*pure virtual*/);
        return (double)x[0].s_double;
    }
    virtual void getScrollMode(const QPoint& x1, int& x2, int& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        this->_binding->callMethod(177, (void*)this, x, true /*pure virtual*/);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(46, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(47, (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(48, (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(49, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(54, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(58, (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(59, (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(60, (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(61, (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(62, (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(63, (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(64, (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(65, (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(66, (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(67, (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(68, (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(69, (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(70, (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(71, (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(72, (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(73, (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(74, (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(75, (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(76, (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(77, (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(79, (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(80, (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(81, (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(82, (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(83, (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(84, (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(85, (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(86, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(87, (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(51, (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(33, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(35, (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(36, (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(37, (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(38, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(45, (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(50, (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(78, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    virtual void incPages(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(542, (void*)this, x)) return;
        this->QwtDoubleRange::incPages(x1);
    }
    virtual void stepChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(548, (void*)this, x)) return;
        this->QwtDoubleRange::stepChange();
    }
    virtual void rangeChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(549, (void*)this, x)) return;
        this->QwtDoubleRange::rangeChange();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 155: //QwtAbstractSlider::ScrollMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtAbstractSlider::ScrollMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtAbstractSlider::ScrollMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtAbstractSlider::ScrollMode*)xdata = (QwtAbstractSlider::ScrollMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtAbstractSlider::ScrollMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtAbstractSlider() { this->_binding->deleted(61, (void*)this); }
};
void xenum_QwtAbstractSlider(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtAbstractSlider::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtAbstractSlider(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtAbstractSlider *xself = (x_QwtAbstractSlider*)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_QwtAbstractSlider::x_3(args);	break;
        case 4: x_QwtAbstractSlider::x_4(args);	break;
        case 5: x_QwtAbstractSlider::x_5(args);	break;
        case 6: x_QwtAbstractSlider::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtAbstractSlider::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: x_QwtAbstractSlider::x_40(args);	break;
        case 41: x_QwtAbstractSlider::x_41(args);	break;
        case 42: x_QwtAbstractSlider::x_42(args);	break;
        case 43: x_QwtAbstractSlider::x_43(args);	break;
        case 44: x_QwtAbstractSlider::x_44(args);	break;
        case 45: x_QwtAbstractSlider::x_45(args);	break;
        case 46: x_QwtAbstractSlider::x_46(args);	break;
        case 47: x_QwtAbstractSlider::x_47(args);	break;
        case 48: x_QwtAbstractSlider::x_48(args);	break;
        case 49: delete (QwtAbstractSlider*)xself;	break;
    }
}
class x_QwtAlphaColorMap : public QwtAlphaColorMap, 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) {
        // QwtAlphaColorMap* QwtAlphaColorMap(const QColor&)
        x_QwtAlphaColorMap* xret = new x_QwtAlphaColorMap(*(const QColor*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAlphaColorMap(const QColor& x1) : QwtAlphaColorMap(x1) {}
    static void x_2(Smoke::Stack x) {
        // QwtAlphaColorMap* QwtAlphaColorMap(const QwtAlphaColorMap&)
        x_QwtAlphaColorMap* xret = new x_QwtAlphaColorMap(*(const QwtAlphaColorMap*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAlphaColorMap(const QwtAlphaColorMap& x1) : QwtAlphaColorMap(x1) {}
    void x_3(Smoke::Stack x) {
        // QwtAlphaColorMap& operator=(const QwtAlphaColorMap&)
        QwtAlphaColorMap& xret = this->QwtAlphaColorMap::operator=(*(const QwtAlphaColorMap*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual QwtColorMap* copy() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAlphaColorMap*>(this))) {
            QwtColorMap* xret = ((const x_QwtAlphaColorMap*)this)->QwtAlphaColorMap::copy();
            x[0].s_class = (void*)xret;
        } else {
            QwtColorMap* xret = ((const x_QwtAlphaColorMap*)this)->copy();
            x[0].s_class = (void*)xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // void setColor(const QColor&)
        this->QwtAlphaColorMap::setColor(*(const QColor*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // QColor color() const
        QColor xret = ((const x_QwtAlphaColorMap*)this)->QwtAlphaColorMap::color();
        x[0].s_class = (void*)new QColor(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual unsigned int rgb(const QwtDoubleInterval&, double) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAlphaColorMap*>(this))) {
            unsigned int xret = ((const x_QwtAlphaColorMap*)this)->QwtAlphaColorMap::rgb(*(const QwtDoubleInterval*)x[1].s_class,(double)x[2].s_double);
            x[0].s_uint = xret;
        } else {
            unsigned int xret = ((const x_QwtAlphaColorMap*)this)->rgb(*(const QwtDoubleInterval*)x[1].s_class,(double)x[2].s_double);
            x[0].s_uint = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // QwtAlphaColorMap* QwtAlphaColorMap()
        x_QwtAlphaColorMap* xret = new x_QwtAlphaColorMap((const QColor&)QColor(Qt::gray));
        x[0].s_class = (void*)xret;
    }
    virtual QwtColorMap* copy() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(194, (void*)this, x)) return (QwtColorMap*)x[0].s_class;
        return this->QwtAlphaColorMap::copy();
    }
    virtual unsigned int rgb(const QwtDoubleInterval& x1, double x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_double = x2;
        if (this->_binding->callMethod(197, (void*)this, x)) return (unsigned int)x[0].s_uint;
        return this->QwtAlphaColorMap::rgb(x1, x2);
    }
    virtual QVector<unsigned int> colorTable(const QwtDoubleInterval& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(274, (void*)this, x)) {
            QVector<unsigned int>* xptr = (QVector<unsigned int>*)x[0].s_class;
            QVector<unsigned int> xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtColorMap::colorTable(x1);
    }
    ~x_QwtAlphaColorMap() { this->_binding->deleted(62, (void*)this); }
};
void xcall_QwtAlphaColorMap(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtAlphaColorMap *xself = (x_QwtAlphaColorMap*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtAlphaColorMap::x_1(args);	break;
        case 2: x_QwtAlphaColorMap::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtAlphaColorMap::x_8(args);	break;
        case 9: delete (QwtAlphaColorMap*)xself;	break;
    }
}
class x_QwtAnalogClock : public QwtAnalogClock, 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<QwtAnalogClock*>(this))) {
            const QMetaObject* xret = ((const x_QwtAnalogClock*)this)->QwtAnalogClock::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QwtAnalogClock*)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<QwtAnalogClock*>(this))) {
            void* xret = this->QwtAnalogClock::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 = QwtAnalogClock::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 = QwtAnalogClock::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 = QwtAnalogClock::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 = QwtAnalogClock::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<QwtAnalogClock*>(this))) {
            int xret = this->QwtAnalogClock::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) {
        // QwtAnalogClock* QwtAnalogClock(QWidget*)
        x_QwtAnalogClock* xret = new x_QwtAnalogClock((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtAnalogClock(QWidget* x1) : QwtAnalogClock(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual void setHand(QwtAnalogClock::Hand, QwtDialNeedle*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAnalogClock*>(this))) {
            this->QwtAnalogClock::setHand((QwtAnalogClock::Hand)x[1].s_enum,(QwtDialNeedle*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setHand((QwtAnalogClock::Hand)x[1].s_enum,(QwtDialNeedle*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_10(Smoke::Stack x) {
        // const QwtDialNeedle* hand(QwtAnalogClock::Hand) const
        const QwtDialNeedle* xret = ((const x_QwtAnalogClock*)this)->QwtAnalogClock::hand((QwtAnalogClock::Hand)x[1].s_enum);
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // QwtDialNeedle* hand(QwtAnalogClock::Hand)
        QwtDialNeedle* xret = this->QwtAnalogClock::hand((QwtAnalogClock::Hand)x[1].s_enum);
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // void setCurrentTime()
        this->QwtAnalogClock::setCurrentTime();
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // void setTime(const QTime&)
        this->QwtAnalogClock::setTime(*(const QTime*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // virtual QwtText scaleLabel(double) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAnalogClock*>(this))) {
            QwtText xret = ((const x_QwtAnalogClock*)this)->QwtAnalogClock::scaleLabel((double)x[1].s_double);
            x[0].s_class = (void*)new QwtText(xret);
        } else {
            QwtText xret = ((const x_QwtAnalogClock*)this)->scaleLabel((double)x[1].s_double);
            x[0].s_class = (void*)new QwtText(xret);
        }
    }
    void x_15(Smoke::Stack x) {
        // virtual void drawNeedle(QPainter*, const QPoint&, int, double, QPalette::ColorGroup) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAnalogClock*>(this))) {
            ((const x_QwtAnalogClock*)this)->QwtAnalogClock::drawNeedle((QPainter*)x[1].s_class,*(const QPoint*)x[2].s_class,(int)x[3].s_int,(double)x[4].s_double,(QPalette::ColorGroup)x[5].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtAnalogClock*)this)->drawNeedle((QPainter*)x[1].s_class,*(const QPoint*)x[2].s_class,(int)x[3].s_int,(double)x[4].s_double,(QPalette::ColorGroup)x[5].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual void drawHand(QPainter*, QwtAnalogClock::Hand, const QPoint&, int, double, QPalette::ColorGroup) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtAnalogClock*>(this))) {
            ((const x_QwtAnalogClock*)this)->QwtAnalogClock::drawHand((QPainter*)x[1].s_class,(QwtAnalogClock::Hand)x[2].s_enum,*(const QPoint*)x[3].s_class,(int)x[4].s_int,(double)x[5].s_double,(QPalette::ColorGroup)x[6].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtAnalogClock*)this)->drawHand((QPainter*)x[1].s_class,(QwtAnalogClock::Hand)x[2].s_enum,*(const QPoint*)x[3].s_class,(int)x[4].s_int,(double)x[5].s_double,(QPalette::ColorGroup)x[6].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_17(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QwtAnalogClock::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_18(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QwtAnalogClock::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_19(Smoke::Stack x) {
        // QwtAnalogClock* QwtAnalogClock()
        x_QwtAnalogClock* xret = new x_QwtAnalogClock((QWidget*)NULL);
        x[0].s_class = (void*)xret;
    }
    void x_20(Smoke::Stack x) {
        // void setTime()
        this->QwtAnalogClock::setTime((const QTime&)QTime::currentTime());
        (void)x; // noop (for compiler warning)
    }
    static void x_21(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QwtAnalogClock::staticMetaObject;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAnalogClock::SecondHand;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAnalogClock::MinuteHand;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAnalogClock::HourHand;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)QwtAnalogClock::NHands;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(200, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QwtAnalogClock::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(201, (void*)this, x)) return (void*)x[0].s_class;
        return this->QwtAnalogClock::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(206, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtAnalogClock::qt_metacall(x1, x2, x3);
    }
    virtual void setHand(QwtAnalogClock::Hand x1, QwtDialNeedle* x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(208, (void*)this, x)) return;
        this->QwtAnalogClock::setHand(x1, x2);
    }
    virtual QwtText scaleLabel(double x1) const {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(213, (void*)this, x)) {
            QwtText* xptr = (QwtText*)x[0].s_class;
            QwtText xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtAnalogClock::scaleLabel(x1);
    }
    virtual void drawNeedle(QPainter* x1, const QPoint& x2, int x3, double x4, QPalette::ColorGroup x5) const {
        Smoke::StackItem x[6];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_int = x3;
        x[4].s_double = x4;
        x[5].s_enum = x5;
        if (this->_binding->callMethod(214, (void*)this, x)) return;
        this->QwtAnalogClock::drawNeedle(x1, x2, x3, x4, x5);
    }
    virtual void drawHand(QPainter* x1, QwtAnalogClock::Hand x2, const QPoint& x3, int x4, double x5, QPalette::ColorGroup x6) const {
        Smoke::StackItem x[7];
        x[1].s_class = (void*)x1;
        x[2].s_enum = x2;
        x[3].s_class = (void*)&x3;
        x[4].s_int = x4;
        x[5].s_double = x5;
        x[6].s_enum = x6;
        if (this->_binding->callMethod(215, (void*)this, x)) return;
        this->QwtAnalogClock::drawHand(x1, x2, x3, x4, x5, x6);
    }
    virtual void setWrapping(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(406, (void*)this, x)) return;
        this->QwtDial::setWrapping(x1);
    }
    virtual void setScale(int x1, int x2, double x3) {
        Smoke::StackItem x[4];
        x[1].s_int = x1;
        x[2].s_int = x2;
        x[3].s_double = x3;
        if (this->_binding->callMethod(408, (void*)this, x)) return;
        this->QwtDial::setScale(x1, x2, x3);
    }
    virtual void setOrigin(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(414, (void*)this, x)) return;
        this->QwtDial::setOrigin(x1);
    }
    virtual QRect scaleContentsRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(423, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtDial::scaleContentsRect();
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(424, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtDial::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(425, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtDial::minimumSizeHint();
    }
    virtual void setScaleDraw(QwtDialScaleDraw* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(426, (void*)this, x)) return;
        this->QwtDial::setScaleDraw(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(429, (void*)this, x)) return;
        this->QwtDial::paintEvent(x1);
    }
    virtual void resizeEvent(QResizeEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(430, (void*)this, x)) return;
        this->QwtDial::resizeEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(431, (void*)this, x)) return;
        this->QwtDial::keyPressEvent(x1);
    }
    virtual void updateMask() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(432, (void*)this, x)) return;
        this->QwtDial::updateMask();
    }
    virtual void drawFrame(QPainter* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(433, (void*)this, x)) return;
        this->QwtDial::drawFrame(x1);
    }
    virtual void drawContents(QPainter* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(434, (void*)this, x)) return;
        this->QwtDial::drawContents(x1);
    }
    virtual void drawFocusIndicator(QPainter* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(435, (void*)this, x)) return;
        this->QwtDial::drawFocusIndicator(x1);
    }
    virtual void drawScale(QPainter* x1, const QPoint& x2, int x3, double x4, double x5, double x6) const {
        Smoke::StackItem x[7];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_int = x3;
        x[4].s_double = x4;
        x[5].s_double = x5;
        x[6].s_double = x6;
        if (this->_binding->callMethod(436, (void*)this, x)) return;
        this->QwtDial::drawScale(x1, x2, x3, x4, x5, x6);
    }
    virtual void drawScaleContents(QPainter* x1, const QPoint& x2, int x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(437, (void*)this, x)) return;
        this->QwtDial::drawScaleContents(x1, x2, x3);
    }
    virtual void rangeChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(441, (void*)this, x)) return;
        this->QwtDial::rangeChange();
    }
    virtual void valueChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(442, (void*)this, x)) return;
        this->QwtDial::valueChange();
    }
    virtual double getValue(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(443, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtDial::getValue(x1);
    }
    virtual void getScrollMode(const QPoint& x1, int& x2, int& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(444, (void*)this, x)) return;
        this->QwtDial::getScrollMode(x1, x2, x3);
    }
    virtual void setMass(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(153, (void*)this, x)) return;
        this->QwtAbstractSlider::setMass(x1);
    }
    virtual double mass() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(154, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtAbstractSlider::mass();
    }
    virtual void setOrientation(Qt::Orientation x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(155, (void*)this, x)) return;
        this->QwtAbstractSlider::setOrientation(x1);
    }
    virtual void setValue(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(160, (void*)this, x)) return;
        this->QwtAbstractSlider::setValue(x1);
    }
    virtual void fitValue(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(161, (void*)this, x)) return;
        this->QwtAbstractSlider::fitValue(x1);
    }
    virtual void incValue(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(162, (void*)this, x)) return;
        this->QwtAbstractSlider::incValue(x1);
    }
    virtual void setReadOnly(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(163, (void*)this, x)) return;
        this->QwtAbstractSlider::setReadOnly(x1);
    }
    virtual void setPosition(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(168, (void*)this, x)) return;
        this->QwtAbstractSlider::setPosition(x1);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(170, (void*)this, x)) return;
        this->QwtAbstractSlider::timerEvent(x1);
    }
    virtual void mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(171, (void*)this, x)) return;
        this->QwtAbstractSlider::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(172, (void*)this, x)) return;
        this->QwtAbstractSlider::mouseReleaseEvent(x1);
    }
    virtual void mouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(173, (void*)this, x)) return;
        this->QwtAbstractSlider::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(175, (void*)this, x)) return;
        this->QwtAbstractSlider::wheelEvent(x1);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(46, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(49, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::heightForWidth(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(54, (void*)this, x)) return;
        this->QWidget::mouseDoubleClickEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(58, (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(59, (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(60, (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(61, (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(62, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(64, (void*)this, x)) return;
        this->QWidget::moveEvent(x1);
    }
    virtual void closeEvent(QCloseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(66, (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(67, (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(68, (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(69, (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(70, (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(71, (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(72, (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(73, (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(74, (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(75, (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(76, (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(77, (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(79, (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(80, (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(81, (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(82, (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(83, (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(84, (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(85, (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(86, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(87, (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(51, (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(33, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(35, (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(36, (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(37, (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(38, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(45, (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(50, (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(78, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    virtual void incPages(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(542, (void*)this, x)) return;
        this->QwtDoubleRange::incPages(x1);
    }
    virtual void stepChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(548, (void*)this, x)) return;
        this->QwtDoubleRange::stepChange();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 159: //QwtAnalogClock::Hand
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtAnalogClock::Hand;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtAnalogClock::Hand*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtAnalogClock::Hand*)xdata = (QwtAnalogClock::Hand)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtAnalogClock::Hand*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtAnalogClock() { this->_binding->deleted(63, (void*)this); }
};
void xenum_QwtAnalogClock(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtAnalogClock::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtAnalogClock(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtAnalogClock *xself = (x_QwtAnalogClock*)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_QwtAnalogClock::x_3(args);	break;
        case 4: x_QwtAnalogClock::x_4(args);	break;
        case 5: x_QwtAnalogClock::x_5(args);	break;
        case 6: x_QwtAnalogClock::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtAnalogClock::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: x_QwtAnalogClock::x_17(args);	break;
        case 18: x_QwtAnalogClock::x_18(args);	break;
        case 19: x_QwtAnalogClock::x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: x_QwtAnalogClock::x_21(args);	break;
        case 22: x_QwtAnalogClock::x_22(args);	break;
        case 23: x_QwtAnalogClock::x_23(args);	break;
        case 24: x_QwtAnalogClock::x_24(args);	break;
        case 25: x_QwtAnalogClock::x_25(args);	break;
        case 26: delete (QwtAnalogClock*)xself;	break;
    }
}
class x_QwtArrayData : public QwtArrayData, 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) {
        // QwtArrayData* QwtArrayData(const QVector<double>&, const QVector<double>&)
        x_QwtArrayData* xret = new x_QwtArrayData(*(const QVector<double>*)x[1].s_class,*(const QVector<double>*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtArrayData(const QVector<double>& x1, const QVector<double>& x2) : QwtArrayData(x1, x2) {}
    static void x_2(Smoke::Stack x) {
        // QwtArrayData* QwtArrayData(const double*, const double*, size_t)
        x_QwtArrayData* xret = new x_QwtArrayData((const double*)x[1].s_class,(const double*)x[2].s_class,(size_t)x[3].s_ulong);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtArrayData(const double* x1, const double* x2, size_t x3) : QwtArrayData(x1, x2, x3) {}
    void x_3(Smoke::Stack x) {
        // QwtArrayData& operator=(const QwtArrayData&)
        QwtArrayData& xret = this->QwtArrayData::operator=(*(const QwtArrayData*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual QwtData* copy() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrayData*>(this))) {
            QwtData* xret = ((const x_QwtArrayData*)this)->QwtArrayData::copy();
            x[0].s_class = (void*)xret;
        } else {
            QwtData* xret = ((const x_QwtArrayData*)this)->copy();
            x[0].s_class = (void*)xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual size_t size() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrayData*>(this))) {
            size_t xret = ((const x_QwtArrayData*)this)->QwtArrayData::size();
            x[0].s_ulong = xret;
        } else {
            size_t xret = ((const x_QwtArrayData*)this)->size();
            x[0].s_ulong = xret;
        }
    }
    void x_6(Smoke::Stack x) {
        // virtual double x(size_t) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrayData*>(this))) {
            double xret = ((const x_QwtArrayData*)this)->QwtArrayData::x((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        } else {
            double xret = ((const x_QwtArrayData*)this)->x((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        }
    }
    void x_7(Smoke::Stack x) {
        // virtual double y(size_t) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrayData*>(this))) {
            double xret = ((const x_QwtArrayData*)this)->QwtArrayData::y((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        } else {
            double xret = ((const x_QwtArrayData*)this)->y((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        }
    }
    void x_8(Smoke::Stack x) {
        // const QVector<double>& xData() const
        const QVector<double>& xret = ((const x_QwtArrayData*)this)->QwtArrayData::xData();
        x[0].s_class = (void*)&xret;
    }
    void x_9(Smoke::Stack x) {
        // const QVector<double>& yData() const
        const QVector<double>& xret = ((const x_QwtArrayData*)this)->QwtArrayData::yData();
        x[0].s_class = (void*)&xret;
    }
    void x_10(Smoke::Stack x) {
        // virtual QRectF boundingRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrayData*>(this))) {
            QRectF xret = ((const x_QwtArrayData*)this)->QwtArrayData::boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        } else {
            QRectF xret = ((const x_QwtArrayData*)this)->boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        }
    }
    static void x_11(Smoke::Stack x) {
        // QwtArrayData* QwtArrayData(const QwtArrayData&)
        x_QwtArrayData* xret = new x_QwtArrayData(*(const QwtArrayData*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtArrayData(const QwtArrayData& x1) : QwtArrayData(x1) {}
    virtual QwtData* copy() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(229, (void*)this, x)) return (QwtData*)x[0].s_class;
        return this->QwtArrayData::copy();
    }
    virtual size_t size() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(230, (void*)this, x)) return (size_t)x[0].s_ulong;
        return this->QwtArrayData::size();
    }
    virtual double x(size_t x1) const {
        Smoke::StackItem x[2];
        x[1].s_ulong = x1;
        if (this->_binding->callMethod(231, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtArrayData::x(x1);
    }
    virtual double y(size_t x1) const {
        Smoke::StackItem x[2];
        x[1].s_ulong = x1;
        if (this->_binding->callMethod(232, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtArrayData::y(x1);
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(235, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtArrayData::boundingRect();
    }
    ~x_QwtArrayData() { this->_binding->deleted(64, (void*)this); }
};
void xcall_QwtArrayData(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtArrayData *xself = (x_QwtArrayData*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtArrayData::x_1(args);	break;
        case 2: x_QwtArrayData::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_QwtArrayData::x_11(args);	break;
        case 12: delete (QwtArrayData*)xself;	break;
    }
}
class x_QwtArrowButton : public QwtArrowButton, 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) {
        // QwtArrowButton* QwtArrowButton(int, Qt::ArrowType, QWidget*)
        x_QwtArrowButton* xret = new x_QwtArrowButton((int)x[1].s_int,(Qt::ArrowType)x[2].s_enum,(QWidget*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtArrowButton(int x1, Qt::ArrowType x2, QWidget* x3) : QwtArrowButton(x1, x2, x3) {}
    void x_2(Smoke::Stack x) {
        // Qt::ArrowType arrowType() const
        Qt::ArrowType xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::arrowType();
        x[0].s_enum = xret;
    }
    void x_3(Smoke::Stack x) {
        // int num() const
        int xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::num();
        x[0].s_int = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual QSize sizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            QSize xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QwtArrowButton*)this)->sizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual QSize minimumSizeHint() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            QSize xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QwtArrowButton*)this)->minimumSizeHint();
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_6(Smoke::Stack x) {
        // virtual void paintEvent(QPaintEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            this->QwtArrowButton::paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->paintEvent((QPaintEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_7(Smoke::Stack x) {
        // virtual void drawButtonLabel(QPainter*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            this->QwtArrowButton::drawButtonLabel((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->drawButtonLabel((QPainter*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_8(Smoke::Stack x) {
        // virtual void drawArrow(QPainter*, const QRect&, Qt::ArrowType) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            ((const x_QwtArrowButton*)this)->QwtArrowButton::drawArrow((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(Qt::ArrowType)x[3].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtArrowButton*)this)->drawArrow((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,(Qt::ArrowType)x[3].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_9(Smoke::Stack x) {
        // virtual QRect labelRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            QRect xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::labelRect();
            x[0].s_class = (void*)new QRect(xret);
        } else {
            QRect xret = ((const x_QwtArrowButton*)this)->labelRect();
            x[0].s_class = (void*)new QRect(xret);
        }
    }
    void x_10(Smoke::Stack x) {
        // virtual QSize arrowSize(Qt::ArrowType, const QSize&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            QSize xret = ((const x_QwtArrowButton*)this)->QwtArrowButton::arrowSize((Qt::ArrowType)x[1].s_enum,*(const QSize*)x[2].s_class);
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QwtArrowButton*)this)->arrowSize((Qt::ArrowType)x[1].s_enum,*(const QSize*)x[2].s_class);
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_11(Smoke::Stack x) {
        // virtual void keyPressEvent(QKeyEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtArrowButton*>(this))) {
            this->QwtArrowButton::keyPressEvent((QKeyEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->keyPressEvent((QKeyEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_12(Smoke::Stack x) {
        // QwtArrowButton* QwtArrowButton(int, Qt::ArrowType)
        x_QwtArrowButton* xret = new x_QwtArrowButton((int)x[1].s_int,(Qt::ArrowType)x[2].s_enum,(QWidget*)NULL);
        x[0].s_class = (void*)xret;
    }
    virtual QSize sizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(241, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtArrowButton::sizeHint();
    }
    virtual QSize minimumSizeHint() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(242, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtArrowButton::minimumSizeHint();
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(243, (void*)this, x)) return;
        this->QwtArrowButton::paintEvent(x1);
    }
    virtual void drawButtonLabel(QPainter* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(244, (void*)this, x)) return;
        this->QwtArrowButton::drawButtonLabel(x1);
    }
    virtual void drawArrow(QPainter* x1, const QRect& x2, Qt::ArrowType x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_enum = x3;
        if (this->_binding->callMethod(245, (void*)this, x)) return;
        this->QwtArrowButton::drawArrow(x1, x2, x3);
    }
    virtual QRect labelRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(246, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtArrowButton::labelRect();
    }
    virtual QSize arrowSize(Qt::ArrowType x1, const QSize& x2) const {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(247, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtArrowButton::arrowSize(x1, x2);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(248, (void*)this, x)) return;
        this->QwtArrowButton::keyPressEvent(x1);
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(39, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QPushButton::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(40, (void*)this, x)) return (void*)x[0].s_class;
        return this->QPushButton::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(41, (void*)this, x)) return (int)x[0].s_int;
        return this->QPushButton::qt_metacall(x1, x2, x3);
    }
    virtual bool hitButton(const QPoint& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QAbstractButton::hitButton(x1);
    }
    virtual void checkStateSet() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2, (void*)this, x)) return;
        this->QAbstractButton::checkStateSet();
    }
    virtual void nextCheckState() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(3, (void*)this, x)) return;
        this->QAbstractButton::nextCheckState();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(46, (void*)this, x)) return;
        this->QWidget::setVisible(x1);
    }
    virtual int heightForWidth(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(49, (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(5, (void*)this, x)) return;
        this->QAbstractButton::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(6, (void*)this, x)) return;
        this->QAbstractButton::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(54, (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(7, (void*)this, x)) return;
        this->QAbstractButton::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(56, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4, (void*)this, x)) return;
        this->QAbstractButton::keyReleaseEvent(x1);
    }
    virtual void focusInEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(43, (void*)this, x)) return;
        this->QPushButton::focusInEvent(x1);
    }
    virtual void focusOutEvent(QFocusEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(44, (void*)this, x)) return;
        this->QPushButton::focusOutEvent(x1);
    }
    virtual void enterEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(61, (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(62, (void*)this, x)) return;
        this->QWidget::leaveEvent(x1);
    }
    virtual void moveEvent(QMoveEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(64, (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(65, (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(66, (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(67, (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(68, (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(69, (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(70, (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(71, (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(72, (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(73, (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(74, (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(75, (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(76, (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(8, (void*)this, x)) return;
        this->QAbstractButton::changeEvent(x1);
    }
    virtual void inputMethodEvent(QInputMethodEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(79, (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(80, (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(81, (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(82, (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(83, (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(84, (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(85, (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(86, (void*)this, x)) return;
        this->QWidget::windowActivationChange(x1);
    }
    virtual void languageChange() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(87, (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(42, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QPushButton::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(33, (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(9, (void*)this, x)) return;
        this->QAbstractButton::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(35, (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(36, (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(37, (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(38, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    virtual int devType() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(45, (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(50, (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(78, (void*)this, x)) return (int)x[0].s_int;
        return this->QWidget::metric(x1);
    }
    ~x_QwtArrowButton() { this->_binding->deleted(65, (void*)this); }
};
void xcall_QwtArrowButton(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtArrowButton *xself = (x_QwtArrowButton*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtArrowButton::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QwtArrowButton::x_12(args);	break;
        case 13: delete (QwtArrowButton*)xself;	break;
    }
}
class x_QwtCPointerData : public QwtCPointerData, 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) {
        // QwtCPointerData* QwtCPointerData(const double*, const double*, size_t)
        x_QwtCPointerData* xret = new x_QwtCPointerData((const double*)x[1].s_class,(const double*)x[2].s_class,(size_t)x[3].s_ulong);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtCPointerData(const double* x1, const double* x2, size_t x3) : QwtCPointerData(x1, x2, x3) {}
    void x_2(Smoke::Stack x) {
        // QwtCPointerData& operator=(const QwtCPointerData&)
        QwtCPointerData& xret = this->QwtCPointerData::operator=(*(const QwtCPointerData*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual QwtData* copy() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtCPointerData*>(this))) {
            QwtData* xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::copy();
            x[0].s_class = (void*)xret;
        } else {
            QwtData* xret = ((const x_QwtCPointerData*)this)->copy();
            x[0].s_class = (void*)xret;
        }
    }
    void x_4(Smoke::Stack x) {
        // virtual size_t size() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtCPointerData*>(this))) {
            size_t xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::size();
            x[0].s_ulong = xret;
        } else {
            size_t xret = ((const x_QwtCPointerData*)this)->size();
            x[0].s_ulong = xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual double x(size_t) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtCPointerData*>(this))) {
            double xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::x((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        } else {
            double xret = ((const x_QwtCPointerData*)this)->x((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        }
    }
    void x_6(Smoke::Stack x) {
        // virtual double y(size_t) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtCPointerData*>(this))) {
            double xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::y((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        } else {
            double xret = ((const x_QwtCPointerData*)this)->y((size_t)x[1].s_ulong);
            x[0].s_double = xret;
        }
    }
    void x_7(Smoke::Stack x) {
        // const double* xData() const
        const double* xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::xData();
        x[0].s_class = (void*)xret;
    }
    void x_8(Smoke::Stack x) {
        // const double* yData() const
        const double* xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::yData();
        x[0].s_class = (void*)xret;
    }
    void x_9(Smoke::Stack x) {
        // virtual QRectF boundingRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtCPointerData*>(this))) {
            QRectF xret = ((const x_QwtCPointerData*)this)->QwtCPointerData::boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        } else {
            QRectF xret = ((const x_QwtCPointerData*)this)->boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        }
    }
    static void x_10(Smoke::Stack x) {
        // QwtCPointerData* QwtCPointerData(const QwtCPointerData&)
        x_QwtCPointerData* xret = new x_QwtCPointerData(*(const QwtCPointerData*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtCPointerData(const QwtCPointerData& x1) : QwtCPointerData(x1) {}
    virtual QwtData* copy() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(253, (void*)this, x)) return (QwtData*)x[0].s_class;
        return this->QwtCPointerData::copy();
    }
    virtual size_t size() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(254, (void*)this, x)) return (size_t)x[0].s_ulong;
        return this->QwtCPointerData::size();
    }
    virtual double x(size_t x1) const {
        Smoke::StackItem x[2];
        x[1].s_ulong = x1;
        if (this->_binding->callMethod(255, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtCPointerData::x(x1);
    }
    virtual double y(size_t x1) const {
        Smoke::StackItem x[2];
        x[1].s_ulong = x1;
        if (this->_binding->callMethod(256, (void*)this, x)) return (double)x[0].s_double;
        return this->QwtCPointerData::y(x1);
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(259, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtCPointerData::boundingRect();
    }
    ~x_QwtCPointerData() { this->_binding->deleted(66, (void*)this); }
};
void xcall_QwtCPointerData(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtCPointerData *xself = (x_QwtCPointerData*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtCPointerData::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: x_QwtCPointerData::x_10(args);	break;
        case 11: delete (QwtCPointerData*)xself;	break;
    }
}

}
