//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_QwtPlotDict : public QwtPlotDict {
    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) {
        // QwtPlotDict* QwtPlotDict()
        x_QwtPlotDict* xret = new x_QwtPlotDict();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotDict() : QwtPlotDict() {}
    void x_2(Smoke::Stack x) {
        // void setAutoDelete(bool)
        this->QwtPlotDict::setAutoDelete((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // bool autoDelete() const
        bool xret = ((const x_QwtPlotDict*)this)->QwtPlotDict::autoDelete();
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // const QList<QwtPlotItem*>& itemList() const
        const QList<QwtPlotItem*>& xret = ((const x_QwtPlotDict*)this)->QwtPlotDict::itemList();
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // void detachItems(int, bool)
        this->QwtPlotDict::detachItems((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    static void x_6(Smoke::Stack x) {
        // QwtPlotDict* QwtPlotDict(const QwtPlotDict&)
        x_QwtPlotDict* xret = new x_QwtPlotDict(*(const QwtPlotDict*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotDict(const QwtPlotDict& x1) : QwtPlotDict(x1) {}
    void x_7(Smoke::Stack x) {
        // void detachItems()
        this->QwtPlotDict::detachItems((int)QwtPlotItem::Rtti_PlotItem,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void detachItems(int)
        this->QwtPlotDict::detachItems((int)x[1].s_int,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    ~x_QwtPlotDict() { this->_binding->deleted(109, (void*)this); }
};
void xcall_QwtPlotDict(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotDict *xself = (x_QwtPlotDict*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtPlotDict::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: x_QwtPlotDict::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: delete (QwtPlotDict*)xself;	break;
    }
}
class x_QwtPlotGrid : public QwtPlotGrid, 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) {
        // QwtPlotGrid* QwtPlotGrid()
        x_QwtPlotGrid* xret = new x_QwtPlotGrid();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotGrid() : QwtPlotGrid() {}
    void x_2(Smoke::Stack x) {
        // virtual int rtti() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotGrid*>(this))) {
            int xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::rtti();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QwtPlotGrid*)this)->rtti();
            x[0].s_int = xret;
        }
    }
    void x_3(Smoke::Stack x) {
        // void enableX(bool)
        this->QwtPlotGrid::enableX((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // bool xEnabled() const
        bool xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::xEnabled();
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // void enableY(bool)
        this->QwtPlotGrid::enableY((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // bool yEnabled() const
        bool xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::yEnabled();
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // void enableXMin(bool)
        this->QwtPlotGrid::enableXMin((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // bool xMinEnabled() const
        bool xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::xMinEnabled();
        x[0].s_bool = xret;
    }
    void x_9(Smoke::Stack x) {
        // void enableYMin(bool)
        this->QwtPlotGrid::enableYMin((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // bool yMinEnabled() const
        bool xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::yMinEnabled();
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // void setXDiv(const QwtScaleDiv&)
        this->QwtPlotGrid::setXDiv(*(const QwtScaleDiv*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // const QwtScaleDiv& xScaleDiv() const
        const QwtScaleDiv& xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::xScaleDiv();
        x[0].s_class = (void*)&xret;
    }
    void x_13(Smoke::Stack x) {
        // void setYDiv(const QwtScaleDiv&)
        this->QwtPlotGrid::setYDiv(*(const QwtScaleDiv*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // const QwtScaleDiv& yScaleDiv() const
        const QwtScaleDiv& xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::yScaleDiv();
        x[0].s_class = (void*)&xret;
    }
    void x_15(Smoke::Stack x) {
        // void setPen(const QPen&)
        this->QwtPlotGrid::setPen(*(const QPen*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void setMajPen(const QPen&)
        this->QwtPlotGrid::setMajPen(*(const QPen*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // const QPen& majPen() const
        const QPen& xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::majPen();
        x[0].s_class = (void*)&xret;
    }
    void x_18(Smoke::Stack x) {
        // void setMinPen(const QPen&)
        this->QwtPlotGrid::setMinPen(*(const QPen*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // const QPen& minPen() const
        const QPen& xret = ((const x_QwtPlotGrid*)this)->QwtPlotGrid::minPen();
        x[0].s_class = (void*)&xret;
    }
    void x_20(Smoke::Stack x) {
        // virtual void draw(QPainter*, const QwtScaleMap&, const QwtScaleMap&, const QRect&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotGrid*>(this))) {
            ((const x_QwtPlotGrid*)this)->QwtPlotGrid::draw((QPainter*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QwtScaleMap*)x[3].s_class,*(const QRect*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtPlotGrid*)this)->draw((QPainter*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QwtScaleMap*)x[3].s_class,*(const QRect*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_21(Smoke::Stack x) {
        // virtual void updateScaleDiv(const QwtScaleDiv&, const QwtScaleDiv&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotGrid*>(this))) {
            this->QwtPlotGrid::updateScaleDiv(*(const QwtScaleDiv*)x[1].s_class,*(const QwtScaleDiv*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->updateScaleDiv(*(const QwtScaleDiv*)x[1].s_class,*(const QwtScaleDiv*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    virtual int rtti() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1288, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotGrid::rtti();
    }
    virtual void draw(QPainter* x1, const QwtScaleMap& x2, const QwtScaleMap& x3, const QRect& x4) const {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        if (this->_binding->callMethod(1306, (void*)this, x)) return;
        this->QwtPlotGrid::draw(x1, x2, x3, x4);
    }
    virtual void updateScaleDiv(const QwtScaleDiv& x1, const QwtScaleDiv& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(1307, (void*)this, x)) return;
        this->QwtPlotGrid::updateScaleDiv(x1, x2);
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1325, (void*)this, x)) return;
        this->QwtPlotItem::setVisible(x1);
    }
    virtual void itemChanged() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1332, (void*)this, x)) return;
        this->QwtPlotItem::itemChanged();
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1334, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotItem::boundingRect();
    }
    virtual void updateLegend(QwtLegend* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1335, (void*)this, x)) return;
        this->QwtPlotItem::updateLegend(x1);
    }
    virtual QWidget* legendItem() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1337, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QwtPlotItem::legendItem();
    }
    ~x_QwtPlotGrid() { this->_binding->deleted(110, (void*)this); }
};
void xcall_QwtPlotGrid(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotGrid *xself = (x_QwtPlotGrid*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtPlotGrid::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: delete (QwtPlotGrid*)xself;	break;
    }
}
class x_QwtPlotItem : public QwtPlotItem, 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) {
        // QwtPlotItem* QwtPlotItem(const QwtText&)
        x_QwtPlotItem* xret = new x_QwtPlotItem(*(const QwtText*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotItem(const QwtText& x1) : QwtPlotItem(x1) {}
    void x_2(Smoke::Stack x) {
        // void attach(QwtPlot*)
        this->QwtPlotItem::attach((QwtPlot*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // void detach()
        this->QwtPlotItem::detach();
        (void)x; // noop (for compiler warning)
    }
    void x_4(Smoke::Stack x) {
        // QwtPlot* plot() const
        QwtPlot* xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::plot();
        x[0].s_class = (void*)xret;
    }
    void x_5(Smoke::Stack x) {
        // void setTitle(const QString&)
        this->QwtPlotItem::setTitle(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // void setTitle(const QwtText&)
        this->QwtPlotItem::setTitle(*(const QwtText*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // const QwtText& title() const
        const QwtText& xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::title();
        x[0].s_class = (void*)&xret;
    }
    void x_8(Smoke::Stack x) {
        // virtual int rtti() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            int xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::rtti();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QwtPlotItem*)this)->rtti();
            x[0].s_int = xret;
        }
    }
    void x_9(Smoke::Stack x) {
        // void setItemAttribute(QwtPlotItem::ItemAttribute, bool)
        this->QwtPlotItem::setItemAttribute((QwtPlotItem::ItemAttribute)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // bool testItemAttribute(QwtPlotItem::ItemAttribute) const
        bool xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::testItemAttribute((QwtPlotItem::ItemAttribute)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // void setRenderHint(QwtPlotItem::RenderHint, bool)
        this->QwtPlotItem::setRenderHint((QwtPlotItem::RenderHint)x[1].s_enum,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // bool testRenderHint(QwtPlotItem::RenderHint) const
        bool xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::testRenderHint((QwtPlotItem::RenderHint)x[1].s_enum);
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // double z() const
        double xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::z();
        x[0].s_double = xret;
    }
    void x_14(Smoke::Stack x) {
        // void setZ(double)
        this->QwtPlotItem::setZ((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void show()
        this->QwtPlotItem::show();
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void hide()
        this->QwtPlotItem::hide();
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // virtual void setVisible(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            this->QwtPlotItem::setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setVisible((bool)x[1].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_18(Smoke::Stack x) {
        // bool isVisible() const
        bool xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::isVisible();
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // void setAxis(int, int)
        this->QwtPlotItem::setAxis((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void setXAxis(int)
        this->QwtPlotItem::setXAxis((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // int xAxis() const
        int xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::xAxis();
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setYAxis(int)
        this->QwtPlotItem::setYAxis((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // int yAxis() const
        int xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::yAxis();
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // virtual void itemChanged()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            this->QwtPlotItem::itemChanged();
            (void)x; // noop (for compiler warning)
        } else {
            this->itemChanged();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // virtual void draw(QPainter*, const QwtScaleMap&, const QwtScaleMap&, const QRect&) const = 0
        ((const x_QwtPlotItem*)this)->draw((QPainter*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QwtScaleMap*)x[3].s_class,*(const QRect*)x[4].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // virtual QRectF boundingRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            QRectF xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        } else {
            QRectF xret = ((const x_QwtPlotItem*)this)->boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        }
    }
    void x_27(Smoke::Stack x) {
        // virtual void updateLegend(QwtLegend*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            ((const x_QwtPlotItem*)this)->QwtPlotItem::updateLegend((QwtLegend*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtPlotItem*)this)->updateLegend((QwtLegend*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_28(Smoke::Stack x) {
        // virtual void updateScaleDiv(const QwtScaleDiv&, const QwtScaleDiv&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            this->QwtPlotItem::updateScaleDiv(*(const QwtScaleDiv*)x[1].s_class,*(const QwtScaleDiv*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->updateScaleDiv(*(const QwtScaleDiv*)x[1].s_class,*(const QwtScaleDiv*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_29(Smoke::Stack x) {
        // virtual QWidget* legendItem() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotItem*>(this))) {
            QWidget* xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::legendItem();
            x[0].s_class = (void*)xret;
        } else {
            QWidget* xret = ((const x_QwtPlotItem*)this)->legendItem();
            x[0].s_class = (void*)xret;
        }
    }
    void x_30(Smoke::Stack x) {
        // QRectF scaleRect(const QwtScaleMap&, const QwtScaleMap&) const
        QRectF xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::scaleRect(*(const QwtScaleMap*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_31(Smoke::Stack x) {
        // QRect paintRect(const QwtScaleMap&, const QwtScaleMap&) const
        QRect xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::paintRect(*(const QwtScaleMap*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_32(Smoke::Stack x) {
        // QRect transform(const QwtScaleMap&, const QwtScaleMap&, const QRectF&) const
        QRect xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::transform(*(const QwtScaleMap*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QRectF*)x[3].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_33(Smoke::Stack x) {
        // QRectF invTransform(const QwtScaleMap&, const QwtScaleMap&, const QRect&) const
        QRectF xret = ((const x_QwtPlotItem*)this)->QwtPlotItem::invTransform(*(const QwtScaleMap*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QRect*)x[3].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    static void x_34(Smoke::Stack x) {
        // QwtPlotItem* QwtPlotItem()
        x_QwtPlotItem* xret = new x_QwtPlotItem((const QwtText&)QwtText());
        x[0].s_class = (void*)xret;
    }
    void x_35(Smoke::Stack x) {
        // void setItemAttribute(QwtPlotItem::ItemAttribute)
        this->QwtPlotItem::setItemAttribute((QwtPlotItem::ItemAttribute)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void setRenderHint(QwtPlotItem::RenderHint)
        this->QwtPlotItem::setRenderHint((QwtPlotItem::RenderHint)x[1].s_enum,(bool)true);
        (void)x; // noop (for compiler warning)
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotItem;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotGrid;
    }
    static void x_39(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotScale;
    }
    static void x_40(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotMarker;
    }
    static void x_41(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotCurve;
    }
    static void x_42(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotHistogram;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotSpectrogram;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotSVG;
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Rtti_PlotUserItem;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::Legend;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::AutoScale;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotItem::RenderAntialiased;
    }
    virtual int rtti() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1316, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotItem::rtti();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1325, (void*)this, x)) return;
        this->QwtPlotItem::setVisible(x1);
    }
    virtual void itemChanged() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1332, (void*)this, x)) return;
        this->QwtPlotItem::itemChanged();
    }
    virtual void draw(QPainter* x1, const QwtScaleMap& x2, const QwtScaleMap& x3, const QRect& x4) const {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        this->_binding->callMethod(1333, (void*)this, x, true /*pure virtual*/);
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1334, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotItem::boundingRect();
    }
    virtual void updateLegend(QwtLegend* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1335, (void*)this, x)) return;
        this->QwtPlotItem::updateLegend(x1);
    }
    virtual void updateScaleDiv(const QwtScaleDiv& x1, const QwtScaleDiv& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(1336, (void*)this, x)) return;
        this->QwtPlotItem::updateScaleDiv(x1, x2);
    }
    virtual QWidget* legendItem() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1337, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QwtPlotItem::legendItem();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 250: //QwtPlotItem::RttiValues
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtPlotItem::RttiValues;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtPlotItem::RttiValues*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtPlotItem::RttiValues*)xdata = (QwtPlotItem::RttiValues)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtPlotItem::RttiValues*)xdata;
                    break;
            }
            break;
        case 248: //QwtPlotItem::ItemAttribute
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtPlotItem::ItemAttribute;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtPlotItem::ItemAttribute*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtPlotItem::ItemAttribute*)xdata = (QwtPlotItem::ItemAttribute)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtPlotItem::ItemAttribute*)xdata;
                    break;
            }
            break;
        case 249: //QwtPlotItem::RenderHint
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtPlotItem::RenderHint;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtPlotItem::RenderHint*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtPlotItem::RenderHint*)xdata = (QwtPlotItem::RenderHint)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtPlotItem::RenderHint*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtPlotItem() { this->_binding->deleted(111, (void*)this); }
};
void xenum_QwtPlotItem(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtPlotItem::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtPlotItem(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotItem *xself = (x_QwtPlotItem*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtPlotItem::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: 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: x_QwtPlotItem::x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: x_QwtPlotItem::x_37(args);	break;
        case 38: x_QwtPlotItem::x_38(args);	break;
        case 39: x_QwtPlotItem::x_39(args);	break;
        case 40: x_QwtPlotItem::x_40(args);	break;
        case 41: x_QwtPlotItem::x_41(args);	break;
        case 42: x_QwtPlotItem::x_42(args);	break;
        case 43: x_QwtPlotItem::x_43(args);	break;
        case 44: x_QwtPlotItem::x_44(args);	break;
        case 45: x_QwtPlotItem::x_45(args);	break;
        case 46: x_QwtPlotItem::x_46(args);	break;
        case 47: x_QwtPlotItem::x_47(args);	break;
        case 48: x_QwtPlotItem::x_48(args);	break;
        case 49: delete (QwtPlotItem*)xself;	break;
    }
}
class x_QwtPlotLayout : public QwtPlotLayout, 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) {
        // QwtPlotLayout* QwtPlotLayout()
        x_QwtPlotLayout* xret = new x_QwtPlotLayout();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotLayout() : QwtPlotLayout() {}
    void x_2(Smoke::Stack x) {
        // void setMargin(int)
        this->QwtPlotLayout::setMargin((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // int margin() const
        int xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::margin();
        x[0].s_int = xret;
    }
    void x_4(Smoke::Stack x) {
        // void setCanvasMargin(int, int)
        this->QwtPlotLayout::setCanvasMargin((int)x[1].s_int,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_5(Smoke::Stack x) {
        // int canvasMargin(int) const
        int xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::canvasMargin((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_6(Smoke::Stack x) {
        // void setAlignCanvasToScales(bool)
        this->QwtPlotLayout::setAlignCanvasToScales((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // bool alignCanvasToScales() const
        bool xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::alignCanvasToScales();
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // void setSpacing(int)
        this->QwtPlotLayout::setSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // int spacing() const
        int xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::spacing();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // void setLegendPosition(QwtPlot::LegendPosition, double)
        this->QwtPlotLayout::setLegendPosition((QwtPlot::LegendPosition)x[1].s_enum,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setLegendPosition(QwtPlot::LegendPosition)
        this->QwtPlotLayout::setLegendPosition((QwtPlot::LegendPosition)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QwtPlot::LegendPosition legendPosition() const
        QwtPlot::LegendPosition xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::legendPosition();
        x[0].s_enum = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setLegendRatio(double)
        this->QwtPlotLayout::setLegendRatio((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // double legendRatio() const
        double xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::legendRatio();
        x[0].s_double = xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual QSize minimumSizeHint(const QwtPlot*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotLayout*>(this))) {
            QSize xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::minimumSizeHint((const QwtPlot*)x[1].s_class);
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QwtPlotLayout*)this)->minimumSizeHint((const QwtPlot*)x[1].s_class);
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_16(Smoke::Stack x) {
        // virtual void activate(const QwtPlot*, const QRect&, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotLayout*>(this))) {
            this->QwtPlotLayout::activate((const QwtPlot*)x[1].s_class,*(const QRect*)x[2].s_class,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->activate((const QwtPlot*)x[1].s_class,*(const QRect*)x[2].s_class,(int)x[3].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // virtual void invalidate()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotLayout*>(this))) {
            this->QwtPlotLayout::invalidate();
            (void)x; // noop (for compiler warning)
        } else {
            this->invalidate();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_18(Smoke::Stack x) {
        // const QRect& titleRect() const
        const QRect& xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::titleRect();
        x[0].s_class = (void*)&xret;
    }
    void x_19(Smoke::Stack x) {
        // const QRect& legendRect() const
        const QRect& xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::legendRect();
        x[0].s_class = (void*)&xret;
    }
    void x_20(Smoke::Stack x) {
        // const QRect& scaleRect(int) const
        const QRect& xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::scaleRect((int)x[1].s_int);
        x[0].s_class = (void*)&xret;
    }
    void x_21(Smoke::Stack x) {
        // const QRect& canvasRect() const
        const QRect& xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::canvasRect();
        x[0].s_class = (void*)&xret;
    }
    void x_22(Smoke::Stack x) {
        // QRect layoutLegend(int, const QRect&) const
        QRect xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::layoutLegend((int)x[1].s_int,*(const QRect*)x[2].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_23(Smoke::Stack x) {
        // QRect alignLegend(const QRect&, const QRect&) const
        QRect xret = ((const x_QwtPlotLayout*)this)->QwtPlotLayout::alignLegend(*(const QRect*)x[1].s_class,*(const QRect*)x[2].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_24(Smoke::Stack x) {
        // void expandLineBreaks(int, const QRect&, int&, int*) const
        ((const x_QwtPlotLayout*)this)->QwtPlotLayout::expandLineBreaks((int)x[1].s_int,*(const QRect*)x[2].s_class,*(int*)x[3].s_class,(int*)x[4].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void alignScales(int, QRect&, QRect*) const
        ((const x_QwtPlotLayout*)this)->QwtPlotLayout::alignScales((int)x[1].s_int,*(QRect*)x[2].s_class,(QRect*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_26(Smoke::Stack x) {
        // QwtPlotLayout* QwtPlotLayout(const QwtPlotLayout&)
        x_QwtPlotLayout* xret = new x_QwtPlotLayout(*(const QwtPlotLayout*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotLayout(const QwtPlotLayout& x1) : QwtPlotLayout(x1) {}
    void x_27(Smoke::Stack x) {
        // void setCanvasMargin(int)
        this->QwtPlotLayout::setCanvasMargin((int)x[1].s_int,(int)-1);
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // void activate(const QwtPlot*, const QRect&)
        this->QwtPlotLayout::activate((const QwtPlot*)x[1].s_class,*(const QRect*)x[2].s_class,(int)0);
        (void)x; // noop (for compiler warning)
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotLayout::AlignScales;
    }
    static void x_30(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotLayout::IgnoreScrollbars;
    }
    static void x_31(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotLayout::IgnoreFrames;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotLayout::IgnoreMargin;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotLayout::IgnoreLegend;
    }
    virtual QSize minimumSizeHint(const QwtPlot* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1372, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotLayout::minimumSizeHint(x1);
    }
    virtual void activate(const QwtPlot* x1, const QRect& x2, int x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_int = x3;
        if (this->_binding->callMethod(1373, (void*)this, x)) return;
        this->QwtPlotLayout::activate(x1, x2, x3);
    }
    virtual void invalidate() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1374, (void*)this, x)) return;
        this->QwtPlotLayout::invalidate();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 252: //QwtPlotLayout::Options
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtPlotLayout::Options;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtPlotLayout::Options*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtPlotLayout::Options*)xdata = (QwtPlotLayout::Options)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtPlotLayout::Options*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtPlotLayout() { this->_binding->deleted(112, (void*)this); }
};
void xenum_QwtPlotLayout(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtPlotLayout::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtPlotLayout(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotLayout *xself = (x_QwtPlotLayout*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtPlotLayout::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: 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: x_QwtPlotLayout::x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: x_QwtPlotLayout::x_29(args);	break;
        case 30: x_QwtPlotLayout::x_30(args);	break;
        case 31: x_QwtPlotLayout::x_31(args);	break;
        case 32: x_QwtPlotLayout::x_32(args);	break;
        case 33: x_QwtPlotLayout::x_33(args);	break;
        case 34: delete (QwtPlotLayout*)xself;	break;
    }
}
class x_QwtPlotMagnifier : public QwtPlotMagnifier, 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<QwtPlotMagnifier*>(this))) {
            const QMetaObject* xret = ((const x_QwtPlotMagnifier*)this)->QwtPlotMagnifier::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QwtPlotMagnifier*)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<QwtPlotMagnifier*>(this))) {
            void* xret = this->QwtPlotMagnifier::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 = QwtPlotMagnifier::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 = QwtPlotMagnifier::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 = QwtPlotMagnifier::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 = QwtPlotMagnifier::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<QwtPlotMagnifier*>(this))) {
            int xret = this->QwtPlotMagnifier::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) {
        // QwtPlotMagnifier* QwtPlotMagnifier(QwtPlotCanvas*)
        x_QwtPlotMagnifier* xret = new x_QwtPlotMagnifier((QwtPlotCanvas*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotMagnifier(QwtPlotCanvas* x1) : QwtPlotMagnifier(x1) {}
    void x_9(Smoke::Stack x) {
        // void setAxisEnabled(int, bool)
        this->QwtPlotMagnifier::setAxisEnabled((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // bool isAxisEnabled(int) const
        bool xret = ((const x_QwtPlotMagnifier*)this)->QwtPlotMagnifier::isAxisEnabled((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // QwtPlotCanvas* canvas()
        QwtPlotCanvas* xret = this->QwtPlotMagnifier::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // const QwtPlotCanvas* canvas() const
        const QwtPlotCanvas* xret = ((const x_QwtPlotMagnifier*)this)->QwtPlotMagnifier::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // QwtPlot* plot()
        QwtPlot* xret = this->QwtPlotMagnifier::plot();
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // const QwtPlot* plot() const
        const QwtPlot* xret = ((const x_QwtPlotMagnifier*)this)->QwtPlotMagnifier::plot();
        x[0].s_class = (void*)xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual void rescale(double)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotMagnifier*>(this))) {
            this->QwtPlotMagnifier::rescale((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        } else {
            this->rescale((double)x[1].s_double);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_16(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QwtPlotMagnifier::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QwtPlotMagnifier::trUtf8((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 const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QwtPlotMagnifier::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1392, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QwtPlotMagnifier::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1393, (void*)this, x)) return (void*)x[0].s_class;
        return this->QwtPlotMagnifier::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(1398, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotMagnifier::qt_metacall(x1, x2, x3);
    }
    virtual void rescale(double x1) {
        Smoke::StackItem x[2];
        x[1].s_double = x1;
        if (this->_binding->callMethod(1406, (void*)this, x)) return;
        this->QwtPlotMagnifier::rescale(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(828, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtMagnifier::eventFilter(x1, x2);
    }
    virtual void widgetMousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(830, (void*)this, x)) return;
        this->QwtMagnifier::widgetMousePressEvent(x1);
    }
    virtual void widgetMouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(831, (void*)this, x)) return;
        this->QwtMagnifier::widgetMouseReleaseEvent(x1);
    }
    virtual void widgetMouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(832, (void*)this, x)) return;
        this->QwtMagnifier::widgetMouseMoveEvent(x1);
    }
    virtual void widgetWheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(833, (void*)this, x)) return;
        this->QwtMagnifier::widgetWheelEvent(x1);
    }
    virtual void widgetKeyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(834, (void*)this, x)) return;
        this->QwtMagnifier::widgetKeyPressEvent(x1);
    }
    virtual void widgetKeyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(835, (void*)this, x)) return;
        this->QwtMagnifier::widgetKeyReleaseEvent(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(32, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(34, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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);
    }
    ~x_QwtPlotMagnifier() { this->_binding->deleted(113, (void*)this); }
};
void xcall_QwtPlotMagnifier(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotMagnifier *xself = (x_QwtPlotMagnifier*)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_QwtPlotMagnifier::x_3(args);	break;
        case 4: x_QwtPlotMagnifier::x_4(args);	break;
        case 5: x_QwtPlotMagnifier::x_5(args);	break;
        case 6: x_QwtPlotMagnifier::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtPlotMagnifier::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: x_QwtPlotMagnifier::x_16(args);	break;
        case 17: x_QwtPlotMagnifier::x_17(args);	break;
        case 18: x_QwtPlotMagnifier::x_18(args);	break;
        case 19: delete (QwtPlotMagnifier*)xself;	break;
    }
}
class x_QwtPlotMarker : public QwtPlotMarker, 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) {
        // QwtPlotMarker* QwtPlotMarker()
        x_QwtPlotMarker* xret = new x_QwtPlotMarker();
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotMarker() : QwtPlotMarker() {}
    void x_2(Smoke::Stack x) {
        // virtual int rtti() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotMarker*>(this))) {
            int xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::rtti();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QwtPlotMarker*)this)->rtti();
            x[0].s_int = xret;
        }
    }
    void x_3(Smoke::Stack x) {
        // double xValue() const
        double xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::xValue();
        x[0].s_double = xret;
    }
    void x_4(Smoke::Stack x) {
        // double yValue() const
        double xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::yValue();
        x[0].s_double = xret;
    }
    void x_5(Smoke::Stack x) {
        // QPointF value() const
        QPointF xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::value();
        x[0].s_class = (void*)new QPointF(xret);
    }
    void x_6(Smoke::Stack x) {
        // void setXValue(double)
        this->QwtPlotMarker::setXValue((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // void setYValue(double)
        this->QwtPlotMarker::setYValue((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void setValue(double, double)
        this->QwtPlotMarker::setValue((double)x[1].s_double,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // void setValue(const QPointF&)
        this->QwtPlotMarker::setValue(*(const QPointF*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setLineStyle(QwtPlotMarker::LineStyle)
        this->QwtPlotMarker::setLineStyle((QwtPlotMarker::LineStyle)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // QwtPlotMarker::LineStyle lineStyle() const
        QwtPlotMarker::LineStyle xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::lineStyle();
        x[0].s_enum = xret;
    }
    void x_12(Smoke::Stack x) {
        // void setLinePen(const QPen&)
        this->QwtPlotMarker::setLinePen(*(const QPen*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // const QPen& linePen() const
        const QPen& xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::linePen();
        x[0].s_class = (void*)&xret;
    }
    void x_14(Smoke::Stack x) {
        // void setSymbol(const QwtSymbol&)
        this->QwtPlotMarker::setSymbol(*(const QwtSymbol*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // const QwtSymbol& symbol() const
        const QwtSymbol& xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::symbol();
        x[0].s_class = (void*)&xret;
    }
    void x_16(Smoke::Stack x) {
        // void setLabel(const QwtText&)
        this->QwtPlotMarker::setLabel(*(const QwtText*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // QwtText label() const
        QwtText xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::label();
        x[0].s_class = (void*)new QwtText(xret);
    }
    void x_18(Smoke::Stack x) {
        // void setLabelAlignment(QFlags<Qt::AlignmentFlag>)
        this->QwtPlotMarker::setLabelAlignment((QFlags<Qt::AlignmentFlag>)x[1].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> labelAlignment() const
        QFlags<Qt::AlignmentFlag> xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::labelAlignment();
        x[0].s_uint = (uint)xret;
    }
    void x_20(Smoke::Stack x) {
        // void setLabelOrientation(Qt::Orientation)
        this->QwtPlotMarker::setLabelOrientation((Qt::Orientation)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // Qt::Orientation labelOrientation() const
        Qt::Orientation xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::labelOrientation();
        x[0].s_enum = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setSpacing(int)
        this->QwtPlotMarker::setSpacing((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // int spacing() const
        int xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::spacing();
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // virtual void draw(QPainter*, const QwtScaleMap&, const QwtScaleMap&, const QRect&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotMarker*>(this))) {
            ((const x_QwtPlotMarker*)this)->QwtPlotMarker::draw((QPainter*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QwtScaleMap*)x[3].s_class,*(const QRect*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QwtPlotMarker*)this)->draw((QPainter*)x[1].s_class,*(const QwtScaleMap*)x[2].s_class,*(const QwtScaleMap*)x[3].s_class,*(const QRect*)x[4].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_25(Smoke::Stack x) {
        // virtual QRectF boundingRect() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotMarker*>(this))) {
            QRectF xret = ((const x_QwtPlotMarker*)this)->QwtPlotMarker::boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        } else {
            QRectF xret = ((const x_QwtPlotMarker*)this)->boundingRect();
            x[0].s_class = (void*)new QRectF(xret);
        }
    }
    void x_26(Smoke::Stack x) {
        // void drawAt(QPainter*, const QRect&, const QPoint&) const
        ((const x_QwtPlotMarker*)this)->QwtPlotMarker::drawAt((QPainter*)x[1].s_class,*(const QRect*)x[2].s_class,*(const QPoint*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotMarker::NoLine;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotMarker::HLine;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotMarker::VLine;
    }
    static void x_30(Smoke::Stack x) {
        x[0].s_enum = (long)QwtPlotMarker::Cross;
    }
    virtual int rtti() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1412, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotMarker::rtti();
    }
    virtual void draw(QPainter* x1, const QwtScaleMap& x2, const QwtScaleMap& x3, const QRect& x4) const {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        if (this->_binding->callMethod(1434, (void*)this, x)) return;
        this->QwtPlotMarker::draw(x1, x2, x3, x4);
    }
    virtual QRectF boundingRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1435, (void*)this, x)) {
            QRectF* xptr = (QRectF*)x[0].s_class;
            QRectF xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotMarker::boundingRect();
    }
    virtual void setVisible(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1325, (void*)this, x)) return;
        this->QwtPlotItem::setVisible(x1);
    }
    virtual void itemChanged() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1332, (void*)this, x)) return;
        this->QwtPlotItem::itemChanged();
    }
    virtual void updateLegend(QwtLegend* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1335, (void*)this, x)) return;
        this->QwtPlotItem::updateLegend(x1);
    }
    virtual void updateScaleDiv(const QwtScaleDiv& x1, const QwtScaleDiv& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(1336, (void*)this, x)) return;
        this->QwtPlotItem::updateScaleDiv(x1, x2);
    }
    virtual QWidget* legendItem() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1337, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QwtPlotItem::legendItem();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 255: //QwtPlotMarker::LineStyle
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QwtPlotMarker::LineStyle;
                    break;
                case Smoke::EnumDelete:
                    delete (QwtPlotMarker::LineStyle*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QwtPlotMarker::LineStyle*)xdata = (QwtPlotMarker::LineStyle)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QwtPlotMarker::LineStyle*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QwtPlotMarker() { this->_binding->deleted(114, (void*)this); }
};
void xenum_QwtPlotMarker(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QwtPlotMarker::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QwtPlotMarker(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotMarker *xself = (x_QwtPlotMarker*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QwtPlotMarker::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: 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_QwtPlotMarker::x_27(args);	break;
        case 28: x_QwtPlotMarker::x_28(args);	break;
        case 29: x_QwtPlotMarker::x_29(args);	break;
        case 30: x_QwtPlotMarker::x_30(args);	break;
        case 31: delete (QwtPlotMarker*)xself;	break;
    }
}
class x_QwtPlotPanner : public QwtPlotPanner, 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<QwtPlotPanner*>(this))) {
            const QMetaObject* xret = ((const x_QwtPlotPanner*)this)->QwtPlotPanner::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QwtPlotPanner*)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<QwtPlotPanner*>(this))) {
            void* xret = this->QwtPlotPanner::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 = QwtPlotPanner::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 = QwtPlotPanner::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 = QwtPlotPanner::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 = QwtPlotPanner::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<QwtPlotPanner*>(this))) {
            int xret = this->QwtPlotPanner::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) {
        // QwtPlotPanner* QwtPlotPanner(QwtPlotCanvas*)
        x_QwtPlotPanner* xret = new x_QwtPlotPanner((QwtPlotCanvas*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotPanner(QwtPlotCanvas* x1) : QwtPlotPanner(x1) {}
    void x_9(Smoke::Stack x) {
        // QwtPlotCanvas* canvas()
        QwtPlotCanvas* xret = this->QwtPlotPanner::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // const QwtPlotCanvas* canvas() const
        const QwtPlotCanvas* xret = ((const x_QwtPlotPanner*)this)->QwtPlotPanner::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // QwtPlot* plot()
        QwtPlot* xret = this->QwtPlotPanner::plot();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // const QwtPlot* plot() const
        const QwtPlot* xret = ((const x_QwtPlotPanner*)this)->QwtPlotPanner::plot();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // void setAxisEnabled(int, bool)
        this->QwtPlotPanner::setAxisEnabled((int)x[1].s_int,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool isAxisEnabled(int) const
        bool xret = ((const x_QwtPlotPanner*)this)->QwtPlotPanner::isAxisEnabled((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual void moveCanvas(int, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPanner*>(this))) {
            this->QwtPlotPanner::moveCanvas((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->moveCanvas((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_16(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QwtPlotPanner::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_17(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QwtPlotPanner::trUtf8((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 const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QwtPlotPanner::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1442, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QwtPlotPanner::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1443, (void*)this, x)) return (void*)x[0].s_class;
        return this->QwtPlotPanner::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(1448, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotPanner::qt_metacall(x1, x2, x3);
    }
    virtual void moveCanvas(int x1, int x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_int = x2;
        if (this->_binding->callMethod(1456, (void*)this, x)) return;
        this->QwtPlotPanner::moveCanvas(x1, x2);
    }
    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(926, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtPanner::eventFilter(x1, x2);
    }
    virtual void widgetMousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(929, (void*)this, x)) return;
        this->QwtPanner::widgetMousePressEvent(x1);
    }
    virtual void widgetMouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(930, (void*)this, x)) return;
        this->QwtPanner::widgetMouseReleaseEvent(x1);
    }
    virtual void widgetMouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(931, (void*)this, x)) return;
        this->QwtPanner::widgetMouseMoveEvent(x1);
    }
    virtual void widgetKeyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(932, (void*)this, x)) return;
        this->QwtPanner::widgetKeyPressEvent(x1);
    }
    virtual void widgetKeyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(933, (void*)this, x)) return;
        this->QwtPanner::widgetKeyReleaseEvent(x1);
    }
    virtual void paintEvent(QPaintEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(934, (void*)this, x)) return;
        this->QwtPanner::paintEvent(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 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 mousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(52, (void*)this, x)) return;
        this->QWidget::mousePressEvent(x1);
    }
    virtual void mouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(53, (void*)this, x)) return;
        this->QWidget::mouseReleaseEvent(x1);
    }
    virtual void mouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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(55, (void*)this, x)) return;
        this->QWidget::mouseMoveEvent(x1);
    }
    virtual void wheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(56, (void*)this, x)) return;
        this->QWidget::wheelEvent(x1);
    }
    virtual void keyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(57, (void*)this, x)) return;
        this->QWidget::keyPressEvent(x1);
    }
    virtual void keyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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 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 void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(34, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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_QwtPlotPanner() { this->_binding->deleted(115, (void*)this); }
};
void xcall_QwtPlotPanner(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotPanner *xself = (x_QwtPlotPanner*)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_QwtPlotPanner::x_3(args);	break;
        case 4: x_QwtPlotPanner::x_4(args);	break;
        case 5: x_QwtPlotPanner::x_5(args);	break;
        case 6: x_QwtPlotPanner::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtPlotPanner::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: x_QwtPlotPanner::x_16(args);	break;
        case 17: x_QwtPlotPanner::x_17(args);	break;
        case 18: x_QwtPlotPanner::x_18(args);	break;
        case 19: delete (QwtPlotPanner*)xself;	break;
    }
}
class x_QwtPlotPicker : public QwtPlotPicker, 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<QwtPlotPicker*>(this))) {
            const QMetaObject* xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QwtPlotPicker*)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<QwtPlotPicker*>(this))) {
            void* xret = this->QwtPlotPicker::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 = QwtPlotPicker::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 = QwtPlotPicker::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 = QwtPlotPicker::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 = QwtPlotPicker::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<QwtPlotPicker*>(this))) {
            int xret = this->QwtPlotPicker::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) {
        // QwtPlotPicker* QwtPlotPicker(QwtPlotCanvas*)
        x_QwtPlotPicker* xret = new x_QwtPlotPicker((QwtPlotCanvas*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotPicker(QwtPlotCanvas* x1) : QwtPlotPicker(x1) {}
    static void x_9(Smoke::Stack x) {
        // QwtPlotPicker* QwtPlotPicker(int, int, QwtPlotCanvas*)
        x_QwtPlotPicker* xret = new x_QwtPlotPicker((int)x[1].s_int,(int)x[2].s_int,(QwtPlotCanvas*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotPicker(int x1, int x2, QwtPlotCanvas* x3) : QwtPlotPicker(x1, x2, x3) {}
    static void x_10(Smoke::Stack x) {
        // QwtPlotPicker* QwtPlotPicker(int, int, int, QwtPicker::RubberBand, QwtPicker::DisplayMode, QwtPlotCanvas*)
        x_QwtPlotPicker* xret = new x_QwtPlotPicker((int)x[1].s_int,(int)x[2].s_int,(int)x[3].s_int,(QwtPicker::RubberBand)x[4].s_enum,(QwtPicker::DisplayMode)x[5].s_enum,(QwtPlotCanvas*)x[6].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QwtPlotPicker(int x1, int x2, int x3, QwtPicker::RubberBand x4, QwtPicker::DisplayMode x5, QwtPlotCanvas* x6) : QwtPlotPicker(x1, x2, x3, x4, x5, x6) {}
    void x_11(Smoke::Stack x) {
        // virtual void setAxis(int, int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            this->QwtPlotPicker::setAxis((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->setAxis((int)x[1].s_int,(int)x[2].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_12(Smoke::Stack x) {
        // int xAxis() const
        int xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::xAxis();
        x[0].s_int = xret;
    }
    void x_13(Smoke::Stack x) {
        // int yAxis() const
        int xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::yAxis();
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // QwtPlot* plot()
        QwtPlot* xret = this->QwtPlotPicker::plot();
        x[0].s_class = (void*)xret;
    }
    void x_15(Smoke::Stack x) {
        // const QwtPlot* plot() const
        const QwtPlot* xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::plot();
        x[0].s_class = (void*)xret;
    }
    void x_16(Smoke::Stack x) {
        // QwtPlotCanvas* canvas()
        QwtPlotCanvas* xret = this->QwtPlotPicker::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_17(Smoke::Stack x) {
        // const QwtPlotCanvas* canvas() const
        const QwtPlotCanvas* xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::canvas();
        x[0].s_class = (void*)xret;
    }
    void x_18(Smoke::Stack x) {
        // void selected(const QwtDoublePoint&)
        this->QwtPlotPicker::selected(*(const QwtDoublePoint*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void selected(const QwtDoubleRect&)
        this->QwtPlotPicker::selected(*(const QwtDoubleRect*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void selected(const QVector<QwtDoublePoint>&)
        this->QwtPlotPicker::selected(*(const QVector<QwtDoublePoint>*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void appended(const QwtDoublePoint&)
        this->QwtPlotPicker::appended(*(const QwtDoublePoint*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void moved(const QwtDoublePoint&)
        this->QwtPlotPicker::moved(*(const QwtDoublePoint*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // QRectF scaleRect() const
        QRectF xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::scaleRect();
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_24(Smoke::Stack x) {
        // QRectF invTransform(const QRect&) const
        QRectF xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::invTransform(*(const QRect*)x[1].s_class);
        x[0].s_class = (void*)new QRectF(xret);
    }
    void x_25(Smoke::Stack x) {
        // QRect transform(const QRectF&) const
        QRect xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::transform(*(const QRectF*)x[1].s_class);
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_26(Smoke::Stack x) {
        // QPointF invTransform(const QPoint&) const
        QPointF xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::invTransform(*(const QPoint*)x[1].s_class);
        x[0].s_class = (void*)new QPointF(xret);
    }
    void x_27(Smoke::Stack x) {
        // QPoint transform(const QPointF&) const
        QPoint xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::transform(*(const QPointF*)x[1].s_class);
        x[0].s_class = (void*)new QPoint(xret);
    }
    void x_28(Smoke::Stack x) {
        // virtual QwtText trackerText(const QPoint&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            QwtText xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::trackerText(*(const QPoint*)x[1].s_class);
            x[0].s_class = (void*)new QwtText(xret);
        } else {
            QwtText xret = ((const x_QwtPlotPicker*)this)->trackerText(*(const QPoint*)x[1].s_class);
            x[0].s_class = (void*)new QwtText(xret);
        }
    }
    void x_29(Smoke::Stack x) {
        // virtual QwtText trackerText(const QPointF&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            QwtText xret = ((const x_QwtPlotPicker*)this)->QwtPlotPicker::trackerText(*(const QPointF*)x[1].s_class);
            x[0].s_class = (void*)new QwtText(xret);
        } else {
            QwtText xret = ((const x_QwtPlotPicker*)this)->trackerText(*(const QPointF*)x[1].s_class);
            x[0].s_class = (void*)new QwtText(xret);
        }
    }
    void x_30(Smoke::Stack x) {
        // virtual void move(const QPoint&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            this->QwtPlotPicker::move(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->move(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_31(Smoke::Stack x) {
        // virtual void append(const QPoint&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            this->QwtPlotPicker::append(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->append(*(const QPoint*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_32(Smoke::Stack x) {
        // virtual bool end(bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QwtPlotPicker*>(this))) {
            bool xret = this->QwtPlotPicker::end((bool)x[1].s_bool);
            x[0].s_bool = xret;
        } else {
            bool xret = this->end((bool)x[1].s_bool);
            x[0].s_bool = xret;
        }
    }
    static void x_33(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QwtPlotPicker::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_34(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QwtPlotPicker::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_35(Smoke::Stack x) {
        // bool end()
        bool xret = this->QwtPlotPicker::end((bool)true);
        x[0].s_bool = xret;
    }
    static void x_36(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QwtPlotPicker::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1461, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QwtPlotPicker::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(1462, (void*)this, x)) return (void*)x[0].s_class;
        return this->QwtPlotPicker::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(1467, (void*)this, x)) return (int)x[0].s_int;
        return this->QwtPlotPicker::qt_metacall(x1, x2, x3);
    }
    virtual void setAxis(int x1, int x2) {
        Smoke::StackItem x[3];
        x[1].s_int = x1;
        x[2].s_int = x2;
        if (this->_binding->callMethod(1471, (void*)this, x)) return;
        this->QwtPlotPicker::setAxis(x1, x2);
    }
    virtual QwtText trackerText(const QPoint& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1488, (void*)this, x)) {
            QwtText* xptr = (QwtText*)x[0].s_class;
            QwtText xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotPicker::trackerText(x1);
    }
    virtual QwtText trackerText(const QPointF& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1489, (void*)this, x)) {
            QwtText* xptr = (QwtText*)x[0].s_class;
            QwtText xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPlotPicker::trackerText(x1);
    }
    virtual void move(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1490, (void*)this, x)) return;
        this->QwtPlotPicker::move(x1);
    }
    virtual void append(const QPoint& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(1491, (void*)this, x)) return;
        this->QwtPlotPicker::append(x1);
    }
    virtual bool end(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(1492, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtPlotPicker::end(x1);
    }
    virtual void setSelectionFlags(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(950, (void*)this, x)) return;
        this->QwtPicker::setSelectionFlags(x1);
    }
    virtual void setRubberBand(QwtPicker::RubberBand x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(952, (void*)this, x)) return;
        this->QwtPicker::setRubberBand(x1);
    }
    virtual void setTrackerMode(QwtPicker::DisplayMode x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(954, (void*)this, x)) return;
        this->QwtPicker::setTrackerMode(x1);
    }
    virtual void setResizeMode(QwtPicker::ResizeMode x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(956, (void*)this, x)) return;
        this->QwtPicker::setResizeMode(x1);
    }
    virtual void setRubberBandPen(const QPen& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(958, (void*)this, x)) return;
        this->QwtPicker::setRubberBandPen(x1);
    }
    virtual void setTrackerPen(const QPen& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(960, (void*)this, x)) return;
        this->QwtPicker::setTrackerPen(x1);
    }
    virtual void setTrackerFont(const QFont& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(962, (void*)this, x)) return;
        this->QwtPicker::setTrackerFont(x1);
    }
    virtual void setEnabled(bool x1) {
        Smoke::StackItem x[2];
        x[1].s_bool = x1;
        if (this->_binding->callMethod(965, (void*)this, x)) return;
        this->QwtPicker::setEnabled(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(967, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtPicker::eventFilter(x1, x2);
    }
    virtual QRect pickRect() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(970, (void*)this, x)) {
            QRect* xptr = (QRect*)x[0].s_class;
            QRect xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QwtPicker::pickRect();
    }
    virtual void drawRubberBand(QPainter* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(972, (void*)this, x)) return;
        this->QwtPicker::drawRubberBand(x1);
    }
    virtual void drawTracker(QPainter* x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(973, (void*)this, x)) return;
        this->QwtPicker::drawTracker(x1);
    }
    virtual bool accept(QPolygon& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(981, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtPicker::accept(x1);
    }
    virtual void transition(const QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(982, (void*)this, x)) return;
        this->QwtPicker::transition(x1);
    }
    virtual void begin() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(983, (void*)this, x)) return;
        this->QwtPicker::begin();
    }
    virtual void reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(987, (void*)this, x)) return;
        this->QwtPicker::reset();
    }
    virtual void widgetMousePressEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(988, (void*)this, x)) return;
        this->QwtPicker::widgetMousePressEvent(x1);
    }
    virtual void widgetMouseReleaseEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(989, (void*)this, x)) return;
        this->QwtPicker::widgetMouseReleaseEvent(x1);
    }
    virtual void widgetMouseDoubleClickEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(990, (void*)this, x)) return;
        this->QwtPicker::widgetMouseDoubleClickEvent(x1);
    }
    virtual void widgetMouseMoveEvent(QMouseEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(991, (void*)this, x)) return;
        this->QwtPicker::widgetMouseMoveEvent(x1);
    }
    virtual void widgetWheelEvent(QWheelEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(992, (void*)this, x)) return;
        this->QwtPicker::widgetWheelEvent(x1);
    }
    virtual void widgetKeyPressEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(993, (void*)this, x)) return;
        this->QwtPicker::widgetKeyPressEvent(x1);
    }
    virtual void widgetKeyReleaseEvent(QKeyEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(994, (void*)this, x)) return;
        this->QwtPicker::widgetKeyReleaseEvent(x1);
    }
    virtual void widgetLeaveEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(995, (void*)this, x)) return;
        this->QwtPicker::widgetLeaveEvent(x1);
    }
    virtual void stretchSelection(const QSize& x1, const QSize& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(996, (void*)this, x)) return;
        this->QwtPicker::stretchSelection(x1, x2);
    }
    virtual QwtPickerMachine* stateMachine(int x1) const {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(997, (void*)this, x)) return (QwtPickerMachine*)x[0].s_class;
        return this->QwtPicker::stateMachine(x1);
    }
    virtual void updateDisplay() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(998, (void*)this, x)) return;
        this->QwtPicker::updateDisplay();
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(32, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(34, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(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 bool mouseMatch(const QwtEventPattern::MousePattern& x1, const QMouseEvent* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(605, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtEventPattern::mouseMatch(x1, x2);
    }
    virtual bool keyMatch(const QwtEventPattern::KeyPattern& x1, const QKeyEvent* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(606, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QwtEventPattern::keyMatch(x1, x2);
    }
    ~x_QwtPlotPicker() { this->_binding->deleted(116, (void*)this); }
};
void xcall_QwtPlotPicker(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QwtPlotPicker *xself = (x_QwtPlotPicker*)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_QwtPlotPicker::x_3(args);	break;
        case 4: x_QwtPlotPicker::x_4(args);	break;
        case 5: x_QwtPlotPicker::x_5(args);	break;
        case 6: x_QwtPlotPicker::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QwtPlotPicker::x_8(args);	break;
        case 9: x_QwtPlotPicker::x_9(args);	break;
        case 10: x_QwtPlotPicker::x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: x_QwtPlotPicker::x_33(args);	break;
        case 34: x_QwtPlotPicker::x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: x_QwtPlotPicker::x_36(args);	break;
        case 37: delete (QwtPlotPicker*)xself;	break;
    }
}

}
