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

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

class __internal_SmokeClass {};

namespace __smokeqtgui {

class x_QStyleOptionTabBarBaseV2 : public QStyleOptionTabBarBaseV2 {
    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) {
        // QStyleOptionTabBarBaseV2* QStyleOptionTabBarBaseV2()
        x_QStyleOptionTabBarBaseV2* xret = new x_QStyleOptionTabBarBaseV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabBarBaseV2() : QStyleOptionTabBarBaseV2() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTabBarBaseV2* QStyleOptionTabBarBaseV2(const QStyleOptionTabBarBaseV2&)
        x_QStyleOptionTabBarBaseV2* xret = new x_QStyleOptionTabBarBaseV2(*(const QStyleOptionTabBarBaseV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabBarBaseV2(const QStyleOptionTabBarBaseV2& x1) : QStyleOptionTabBarBaseV2(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTabBarBaseV2* QStyleOptionTabBarBaseV2(const QStyleOptionTabBarBase&)
        x_QStyleOptionTabBarBaseV2* xret = new x_QStyleOptionTabBarBaseV2(*(const QStyleOptionTabBarBase*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabBarBaseV2(const QStyleOptionTabBarBase& x1) : QStyleOptionTabBarBaseV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionTabBarBaseV2& operator=(const QStyleOptionTabBarBase&)
        QStyleOptionTabBarBaseV2& xret = this->QStyleOptionTabBarBaseV2::operator=(*(const QStyleOptionTabBarBase*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionTabBarBaseV2* QStyleOptionTabBarBaseV2(int)
        x_QStyleOptionTabBarBaseV2* xret = new x_QStyleOptionTabBarBaseV2((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabBarBaseV2(int x1) : QStyleOptionTabBarBaseV2(x1) {}
    void x_6(Smoke::Stack x) {
        // bool documentMode
        x[0].s_bool = this->QStyleOptionTabBarBaseV2::documentMode;
    }
    void x_7(Smoke::Stack x) {
        // bool documentMode=
        this->QStyleOptionTabBarBaseV2::documentMode = (bool)x[1].s_bool;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabBarBaseV2::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 834: //QStyleOptionTabBarBaseV2::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabBarBaseV2::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabBarBaseV2::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabBarBaseV2::StyleOptionVersion*)xdata = (QStyleOptionTabBarBaseV2::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabBarBaseV2::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTabBarBaseV2() { this->_binding->deleted(350, (void*)this); }
};
void xenum_QStyleOptionTabBarBaseV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTabBarBaseV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTabBarBaseV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTabBarBaseV2 *xself = (x_QStyleOptionTabBarBaseV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTabBarBaseV2::x_1(args);	break;
        case 2: x_QStyleOptionTabBarBaseV2::x_2(args);	break;
        case 3: x_QStyleOptionTabBarBaseV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionTabBarBaseV2::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStyleOptionTabBarBaseV2::x_8(args);	break;
        case 9: delete (QStyleOptionTabBarBaseV2*)xself;	break;
    }
}
class x_QStyleOptionTabV2 : public QStyleOptionTabV2 {
    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) {
        // QStyleOptionTabV2* QStyleOptionTabV2()
        x_QStyleOptionTabV2* xret = new x_QStyleOptionTabV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV2() : QStyleOptionTabV2() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTabV2* QStyleOptionTabV2(const QStyleOptionTabV2&)
        x_QStyleOptionTabV2* xret = new x_QStyleOptionTabV2(*(const QStyleOptionTabV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV2(const QStyleOptionTabV2& x1) : QStyleOptionTabV2(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTabV2* QStyleOptionTabV2(const QStyleOptionTab&)
        x_QStyleOptionTabV2* xret = new x_QStyleOptionTabV2(*(const QStyleOptionTab*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV2(const QStyleOptionTab& x1) : QStyleOptionTabV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionTabV2& operator=(const QStyleOptionTab&)
        QStyleOptionTabV2& xret = this->QStyleOptionTabV2::operator=(*(const QStyleOptionTab*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionTabV2* QStyleOptionTabV2(int)
        x_QStyleOptionTabV2* xret = new x_QStyleOptionTabV2((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV2(int x1) : QStyleOptionTabV2(x1) {}
    void x_6(Smoke::Stack x) {
        // QSize iconSize
        x[0].s_class = (void*)&this->QStyleOptionTabV2::iconSize;
    }
    void x_7(Smoke::Stack x) {
        // QSize iconSize=
        this->QStyleOptionTabV2::iconSize = *(const QSize*)x[1].s_class;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabV2::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 837: //QStyleOptionTabV2::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabV2::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabV2::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabV2::StyleOptionVersion*)xdata = (QStyleOptionTabV2::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabV2::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTabV2() { this->_binding->deleted(351, (void*)this); }
};
void xenum_QStyleOptionTabV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTabV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTabV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTabV2 *xself = (x_QStyleOptionTabV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTabV2::x_1(args);	break;
        case 2: x_QStyleOptionTabV2::x_2(args);	break;
        case 3: x_QStyleOptionTabV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionTabV2::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStyleOptionTabV2::x_8(args);	break;
        case 9: delete (QStyleOptionTabV2*)xself;	break;
    }
}
class x_QStyleOptionTabV3 : public QStyleOptionTabV3 {
    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) {
        // QStyleOptionTabV3* QStyleOptionTabV3()
        x_QStyleOptionTabV3* xret = new x_QStyleOptionTabV3();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV3() : QStyleOptionTabV3() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTabV3* QStyleOptionTabV3(const QStyleOptionTabV3&)
        x_QStyleOptionTabV3* xret = new x_QStyleOptionTabV3(*(const QStyleOptionTabV3*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV3(const QStyleOptionTabV3& x1) : QStyleOptionTabV3(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTabV3* QStyleOptionTabV3(const QStyleOptionTabV2&)
        x_QStyleOptionTabV3* xret = new x_QStyleOptionTabV3(*(const QStyleOptionTabV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV3(const QStyleOptionTabV2& x1) : QStyleOptionTabV3(x1) {}
    static void x_4(Smoke::Stack x) {
        // QStyleOptionTabV3* QStyleOptionTabV3(const QStyleOptionTab&)
        x_QStyleOptionTabV3* xret = new x_QStyleOptionTabV3(*(const QStyleOptionTab*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV3(const QStyleOptionTab& x1) : QStyleOptionTabV3(x1) {}
    void x_5(Smoke::Stack x) {
        // QStyleOptionTabV3& operator=(const QStyleOptionTab&)
        QStyleOptionTabV3& xret = this->QStyleOptionTabV3::operator=(*(const QStyleOptionTab*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_6(Smoke::Stack x) {
        // QStyleOptionTabV3* QStyleOptionTabV3(int)
        x_QStyleOptionTabV3* xret = new x_QStyleOptionTabV3((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabV3(int x1) : QStyleOptionTabV3(x1) {}
    void x_7(Smoke::Stack x) {
        // bool documentMode
        x[0].s_bool = this->QStyleOptionTabV3::documentMode;
    }
    void x_8(Smoke::Stack x) {
        // bool documentMode=
        this->QStyleOptionTabV3::documentMode = (bool)x[1].s_bool;
    }
    void x_9(Smoke::Stack x) {
        // QSize leftButtonSize
        x[0].s_class = (void*)&this->QStyleOptionTabV3::leftButtonSize;
    }
    void x_10(Smoke::Stack x) {
        // QSize leftButtonSize=
        this->QStyleOptionTabV3::leftButtonSize = *(const QSize*)x[1].s_class;
    }
    void x_11(Smoke::Stack x) {
        // QSize rightButtonSize
        x[0].s_class = (void*)&this->QStyleOptionTabV3::rightButtonSize;
    }
    void x_12(Smoke::Stack x) {
        // QSize rightButtonSize=
        this->QStyleOptionTabV3::rightButtonSize = *(const QSize*)x[1].s_class;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabV3::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 840: //QStyleOptionTabV3::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabV3::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabV3::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabV3::StyleOptionVersion*)xdata = (QStyleOptionTabV3::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabV3::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTabV3() { this->_binding->deleted(352, (void*)this); }
};
void xenum_QStyleOptionTabV3(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTabV3::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTabV3(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTabV3 *xself = (x_QStyleOptionTabV3*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTabV3::x_1(args);	break;
        case 2: x_QStyleOptionTabV3::x_2(args);	break;
        case 3: x_QStyleOptionTabV3::x_3(args);	break;
        case 4: x_QStyleOptionTabV3::x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: x_QStyleOptionTabV3::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: x_QStyleOptionTabV3::x_13(args);	break;
        case 14: delete (QStyleOptionTabV3*)xself;	break;
    }
}
class x_QStyleOptionTabWidgetFrame : public QStyleOptionTabWidgetFrame {
    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) {
        // QStyleOptionTabWidgetFrame* QStyleOptionTabWidgetFrame()
        x_QStyleOptionTabWidgetFrame* xret = new x_QStyleOptionTabWidgetFrame();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrame() : QStyleOptionTabWidgetFrame() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrame* QStyleOptionTabWidgetFrame(const QStyleOptionTabWidgetFrame&)
        x_QStyleOptionTabWidgetFrame* xret = new x_QStyleOptionTabWidgetFrame(*(const QStyleOptionTabWidgetFrame*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrame(const QStyleOptionTabWidgetFrame& x1) : QStyleOptionTabWidgetFrame(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrame* QStyleOptionTabWidgetFrame(int)
        x_QStyleOptionTabWidgetFrame* xret = new x_QStyleOptionTabWidgetFrame((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrame(int x1) : QStyleOptionTabWidgetFrame(x1) {}
    void x_4(Smoke::Stack x) {
        // int lineWidth
        x[0].s_int = this->QStyleOptionTabWidgetFrame::lineWidth;
    }
    void x_5(Smoke::Stack x) {
        // int lineWidth=
        this->QStyleOptionTabWidgetFrame::lineWidth = (int)x[1].s_int;
    }
    void x_6(Smoke::Stack x) {
        // int midLineWidth
        x[0].s_int = this->QStyleOptionTabWidgetFrame::midLineWidth;
    }
    void x_7(Smoke::Stack x) {
        // int midLineWidth=
        this->QStyleOptionTabWidgetFrame::midLineWidth = (int)x[1].s_int;
    }
    void x_8(Smoke::Stack x) {
        // QTabBar::Shape shape
        x[0].s_enum = this->QStyleOptionTabWidgetFrame::shape;
    }
    void x_9(Smoke::Stack x) {
        // QTabBar::Shape shape=
        this->QStyleOptionTabWidgetFrame::shape = (QTabBar::Shape)x[1].s_enum;
    }
    void x_10(Smoke::Stack x) {
        // QSize tabBarSize
        x[0].s_class = (void*)&this->QStyleOptionTabWidgetFrame::tabBarSize;
    }
    void x_11(Smoke::Stack x) {
        // QSize tabBarSize=
        this->QStyleOptionTabWidgetFrame::tabBarSize = *(const QSize*)x[1].s_class;
    }
    void x_12(Smoke::Stack x) {
        // QSize rightCornerWidgetSize
        x[0].s_class = (void*)&this->QStyleOptionTabWidgetFrame::rightCornerWidgetSize;
    }
    void x_13(Smoke::Stack x) {
        // QSize rightCornerWidgetSize=
        this->QStyleOptionTabWidgetFrame::rightCornerWidgetSize = *(const QSize*)x[1].s_class;
    }
    void x_14(Smoke::Stack x) {
        // QSize leftCornerWidgetSize
        x[0].s_class = (void*)&this->QStyleOptionTabWidgetFrame::leftCornerWidgetSize;
    }
    void x_15(Smoke::Stack x) {
        // QSize leftCornerWidgetSize=
        this->QStyleOptionTabWidgetFrame::leftCornerWidgetSize = *(const QSize*)x[1].s_class;
    }
    static void x_16(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabWidgetFrame::Type;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabWidgetFrame::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 842: //QStyleOptionTabWidgetFrame::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabWidgetFrame::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabWidgetFrame::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabWidgetFrame::StyleOptionType*)xdata = (QStyleOptionTabWidgetFrame::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabWidgetFrame::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 843: //QStyleOptionTabWidgetFrame::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabWidgetFrame::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabWidgetFrame::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabWidgetFrame::StyleOptionVersion*)xdata = (QStyleOptionTabWidgetFrame::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabWidgetFrame::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTabWidgetFrame() { this->_binding->deleted(353, (void*)this); }
};
void xenum_QStyleOptionTabWidgetFrame(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTabWidgetFrame::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTabWidgetFrame(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTabWidgetFrame *xself = (x_QStyleOptionTabWidgetFrame*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTabWidgetFrame::x_1(args);	break;
        case 2: x_QStyleOptionTabWidgetFrame::x_2(args);	break;
        case 3: x_QStyleOptionTabWidgetFrame::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: x_QStyleOptionTabWidgetFrame::x_16(args);	break;
        case 17: x_QStyleOptionTabWidgetFrame::x_17(args);	break;
        case 18: delete (QStyleOptionTabWidgetFrame*)xself;	break;
    }
}
class x_QStyleOptionTabWidgetFrameV2 : public QStyleOptionTabWidgetFrameV2 {
    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) {
        // QStyleOptionTabWidgetFrameV2* QStyleOptionTabWidgetFrameV2()
        x_QStyleOptionTabWidgetFrameV2* xret = new x_QStyleOptionTabWidgetFrameV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrameV2() : QStyleOptionTabWidgetFrameV2() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrameV2* QStyleOptionTabWidgetFrameV2(const QStyleOptionTabWidgetFrameV2&)
        x_QStyleOptionTabWidgetFrameV2* xret = new x_QStyleOptionTabWidgetFrameV2(*(const QStyleOptionTabWidgetFrameV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrameV2(const QStyleOptionTabWidgetFrameV2& x1) : QStyleOptionTabWidgetFrameV2(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrameV2* QStyleOptionTabWidgetFrameV2(const QStyleOptionTabWidgetFrame&)
        x_QStyleOptionTabWidgetFrameV2* xret = new x_QStyleOptionTabWidgetFrameV2(*(const QStyleOptionTabWidgetFrame*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrameV2(const QStyleOptionTabWidgetFrame& x1) : QStyleOptionTabWidgetFrameV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrameV2& operator=(const QStyleOptionTabWidgetFrame&)
        QStyleOptionTabWidgetFrameV2& xret = this->QStyleOptionTabWidgetFrameV2::operator=(*(const QStyleOptionTabWidgetFrame*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionTabWidgetFrameV2* QStyleOptionTabWidgetFrameV2(int)
        x_QStyleOptionTabWidgetFrameV2* xret = new x_QStyleOptionTabWidgetFrameV2((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTabWidgetFrameV2(int x1) : QStyleOptionTabWidgetFrameV2(x1) {}
    void x_6(Smoke::Stack x) {
        // QRect tabBarRect
        x[0].s_class = (void*)&this->QStyleOptionTabWidgetFrameV2::tabBarRect;
    }
    void x_7(Smoke::Stack x) {
        // QRect tabBarRect=
        this->QStyleOptionTabWidgetFrameV2::tabBarRect = *(const QRect*)x[1].s_class;
    }
    void x_8(Smoke::Stack x) {
        // QRect selectedTabRect
        x[0].s_class = (void*)&this->QStyleOptionTabWidgetFrameV2::selectedTabRect;
    }
    void x_9(Smoke::Stack x) {
        // QRect selectedTabRect=
        this->QStyleOptionTabWidgetFrameV2::selectedTabRect = *(const QRect*)x[1].s_class;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTabWidgetFrameV2::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 846: //QStyleOptionTabWidgetFrameV2::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTabWidgetFrameV2::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTabWidgetFrameV2::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTabWidgetFrameV2::StyleOptionVersion*)xdata = (QStyleOptionTabWidgetFrameV2::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTabWidgetFrameV2::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTabWidgetFrameV2() { this->_binding->deleted(354, (void*)this); }
};
void xenum_QStyleOptionTabWidgetFrameV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTabWidgetFrameV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTabWidgetFrameV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTabWidgetFrameV2 *xself = (x_QStyleOptionTabWidgetFrameV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTabWidgetFrameV2::x_1(args);	break;
        case 2: x_QStyleOptionTabWidgetFrameV2::x_2(args);	break;
        case 3: x_QStyleOptionTabWidgetFrameV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionTabWidgetFrameV2::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: x_QStyleOptionTabWidgetFrameV2::x_10(args);	break;
        case 11: delete (QStyleOptionTabWidgetFrameV2*)xself;	break;
    }
}
class x_QStyleOptionTitleBar : public QStyleOptionTitleBar {
    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) {
        // QStyleOptionTitleBar* QStyleOptionTitleBar()
        x_QStyleOptionTitleBar* xret = new x_QStyleOptionTitleBar();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTitleBar() : QStyleOptionTitleBar() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionTitleBar* QStyleOptionTitleBar(const QStyleOptionTitleBar&)
        x_QStyleOptionTitleBar* xret = new x_QStyleOptionTitleBar(*(const QStyleOptionTitleBar*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTitleBar(const QStyleOptionTitleBar& x1) : QStyleOptionTitleBar(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionTitleBar* QStyleOptionTitleBar(int)
        x_QStyleOptionTitleBar* xret = new x_QStyleOptionTitleBar((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionTitleBar(int x1) : QStyleOptionTitleBar(x1) {}
    void x_4(Smoke::Stack x) {
        // QString text
        x[0].s_class = (void*)&this->QStyleOptionTitleBar::text;
    }
    void x_5(Smoke::Stack x) {
        // QString text=
        this->QStyleOptionTitleBar::text = *(const QString*)x[1].s_class;
    }
    void x_6(Smoke::Stack x) {
        // QIcon icon
        x[0].s_class = (void*)&this->QStyleOptionTitleBar::icon;
    }
    void x_7(Smoke::Stack x) {
        // QIcon icon=
        this->QStyleOptionTitleBar::icon = *(const QIcon*)x[1].s_class;
    }
    void x_8(Smoke::Stack x) {
        // int titleBarState
        x[0].s_int = this->QStyleOptionTitleBar::titleBarState;
    }
    void x_9(Smoke::Stack x) {
        // int titleBarState=
        this->QStyleOptionTitleBar::titleBarState = (int)x[1].s_int;
    }
    void x_10(Smoke::Stack x) {
        // QFlags<Qt::WindowType> titleBarFlags
        x[0].s_uint = (uint)this->QStyleOptionTitleBar::titleBarFlags;
    }
    void x_11(Smoke::Stack x) {
        // QFlags<Qt::WindowType> titleBarFlags=
        this->QStyleOptionTitleBar::titleBarFlags = (QFlags<Qt::WindowType>)x[1].s_uint;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTitleBar::Type;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionTitleBar::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 848: //QStyleOptionTitleBar::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTitleBar::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTitleBar::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTitleBar::StyleOptionType*)xdata = (QStyleOptionTitleBar::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTitleBar::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 849: //QStyleOptionTitleBar::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionTitleBar::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionTitleBar::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionTitleBar::StyleOptionVersion*)xdata = (QStyleOptionTitleBar::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionTitleBar::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionTitleBar() { this->_binding->deleted(355, (void*)this); }
};
void xenum_QStyleOptionTitleBar(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionTitleBar::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionTitleBar(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionTitleBar *xself = (x_QStyleOptionTitleBar*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionTitleBar::x_1(args);	break;
        case 2: x_QStyleOptionTitleBar::x_2(args);	break;
        case 3: x_QStyleOptionTitleBar::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QStyleOptionTitleBar::x_12(args);	break;
        case 13: x_QStyleOptionTitleBar::x_13(args);	break;
        case 14: delete (QStyleOptionTitleBar*)xself;	break;
    }
}
class x_QStyleOptionToolBar : public QStyleOptionToolBar {
    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) {
        // QStyleOptionToolBar* QStyleOptionToolBar()
        x_QStyleOptionToolBar* xret = new x_QStyleOptionToolBar();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBar() : QStyleOptionToolBar() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionToolBar* QStyleOptionToolBar(const QStyleOptionToolBar&)
        x_QStyleOptionToolBar* xret = new x_QStyleOptionToolBar(*(const QStyleOptionToolBar*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBar(const QStyleOptionToolBar& x1) : QStyleOptionToolBar(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionToolBar* QStyleOptionToolBar(int)
        x_QStyleOptionToolBar* xret = new x_QStyleOptionToolBar((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBar(int x1) : QStyleOptionToolBar(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionToolBar::ToolBarPosition positionOfLine
        x[0].s_enum = this->QStyleOptionToolBar::positionOfLine;
    }
    void x_5(Smoke::Stack x) {
        // QStyleOptionToolBar::ToolBarPosition positionOfLine=
        this->QStyleOptionToolBar::positionOfLine = (QStyleOptionToolBar::ToolBarPosition)x[1].s_enum;
    }
    void x_6(Smoke::Stack x) {
        // QStyleOptionToolBar::ToolBarPosition positionWithinLine
        x[0].s_enum = this->QStyleOptionToolBar::positionWithinLine;
    }
    void x_7(Smoke::Stack x) {
        // QStyleOptionToolBar::ToolBarPosition positionWithinLine=
        this->QStyleOptionToolBar::positionWithinLine = (QStyleOptionToolBar::ToolBarPosition)x[1].s_enum;
    }
    void x_8(Smoke::Stack x) {
        // Qt::ToolBarArea toolBarArea
        x[0].s_enum = this->QStyleOptionToolBar::toolBarArea;
    }
    void x_9(Smoke::Stack x) {
        // Qt::ToolBarArea toolBarArea=
        this->QStyleOptionToolBar::toolBarArea = (Qt::ToolBarArea)x[1].s_enum;
    }
    void x_10(Smoke::Stack x) {
        // QFlags<QStyleOptionToolBar::ToolBarFeature> features
        x[0].s_uint = (uint)this->QStyleOptionToolBar::features;
    }
    void x_11(Smoke::Stack x) {
        // QFlags<QStyleOptionToolBar::ToolBarFeature> features=
        this->QStyleOptionToolBar::features = (QFlags<QStyleOptionToolBar::ToolBarFeature>)x[1].s_uint;
    }
    void x_12(Smoke::Stack x) {
        // int lineWidth
        x[0].s_int = this->QStyleOptionToolBar::lineWidth;
    }
    void x_13(Smoke::Stack x) {
        // int lineWidth=
        this->QStyleOptionToolBar::lineWidth = (int)x[1].s_int;
    }
    void x_14(Smoke::Stack x) {
        // int midLineWidth
        x[0].s_int = this->QStyleOptionToolBar::midLineWidth;
    }
    void x_15(Smoke::Stack x) {
        // int midLineWidth=
        this->QStyleOptionToolBar::midLineWidth = (int)x[1].s_int;
    }
    static void x_16(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::Type;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::Version;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::Beginning;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::Middle;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::End;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::OnlyOne;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::None;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBar::Movable;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 851: //QStyleOptionToolBar::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBar::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBar::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBar::StyleOptionType*)xdata = (QStyleOptionToolBar::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBar::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 852: //QStyleOptionToolBar::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBar::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBar::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBar::StyleOptionVersion*)xdata = (QStyleOptionToolBar::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBar::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 854: //QStyleOptionToolBar::ToolBarPosition
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBar::ToolBarPosition;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBar::ToolBarPosition*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBar::ToolBarPosition*)xdata = (QStyleOptionToolBar::ToolBarPosition)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBar::ToolBarPosition*)xdata;
                    break;
            }
            break;
        case 853: //QStyleOptionToolBar::ToolBarFeature
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBar::ToolBarFeature;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBar::ToolBarFeature*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBar::ToolBarFeature*)xdata = (QStyleOptionToolBar::ToolBarFeature)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBar::ToolBarFeature*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionToolBar() { this->_binding->deleted(356, (void*)this); }
};
void xenum_QStyleOptionToolBar(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionToolBar::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionToolBar(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionToolBar *xself = (x_QStyleOptionToolBar*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionToolBar::x_1(args);	break;
        case 2: x_QStyleOptionToolBar::x_2(args);	break;
        case 3: x_QStyleOptionToolBar::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: x_QStyleOptionToolBar::x_16(args);	break;
        case 17: x_QStyleOptionToolBar::x_17(args);	break;
        case 18: x_QStyleOptionToolBar::x_18(args);	break;
        case 19: x_QStyleOptionToolBar::x_19(args);	break;
        case 20: x_QStyleOptionToolBar::x_20(args);	break;
        case 21: x_QStyleOptionToolBar::x_21(args);	break;
        case 22: x_QStyleOptionToolBar::x_22(args);	break;
        case 23: x_QStyleOptionToolBar::x_23(args);	break;
        case 24: delete (QStyleOptionToolBar*)xself;	break;
    }
}
class x_QStyleOptionToolBox : public QStyleOptionToolBox {
    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) {
        // QStyleOptionToolBox* QStyleOptionToolBox()
        x_QStyleOptionToolBox* xret = new x_QStyleOptionToolBox();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBox() : QStyleOptionToolBox() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionToolBox* QStyleOptionToolBox(const QStyleOptionToolBox&)
        x_QStyleOptionToolBox* xret = new x_QStyleOptionToolBox(*(const QStyleOptionToolBox*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBox(const QStyleOptionToolBox& x1) : QStyleOptionToolBox(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionToolBox* QStyleOptionToolBox(int)
        x_QStyleOptionToolBox* xret = new x_QStyleOptionToolBox((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBox(int x1) : QStyleOptionToolBox(x1) {}
    void x_4(Smoke::Stack x) {
        // QString text
        x[0].s_class = (void*)&this->QStyleOptionToolBox::text;
    }
    void x_5(Smoke::Stack x) {
        // QString text=
        this->QStyleOptionToolBox::text = *(const QString*)x[1].s_class;
    }
    void x_6(Smoke::Stack x) {
        // QIcon icon
        x[0].s_class = (void*)&this->QStyleOptionToolBox::icon;
    }
    void x_7(Smoke::Stack x) {
        // QIcon icon=
        this->QStyleOptionToolBox::icon = *(const QIcon*)x[1].s_class;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBox::Type;
    }
    static void x_9(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBox::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 856: //QStyleOptionToolBox::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBox::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBox::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBox::StyleOptionType*)xdata = (QStyleOptionToolBox::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBox::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 857: //QStyleOptionToolBox::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBox::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBox::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBox::StyleOptionVersion*)xdata = (QStyleOptionToolBox::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBox::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionToolBox() { this->_binding->deleted(357, (void*)this); }
};
void xenum_QStyleOptionToolBox(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionToolBox::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionToolBox(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionToolBox *xself = (x_QStyleOptionToolBox*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionToolBox::x_1(args);	break;
        case 2: x_QStyleOptionToolBox::x_2(args);	break;
        case 3: x_QStyleOptionToolBox::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStyleOptionToolBox::x_8(args);	break;
        case 9: x_QStyleOptionToolBox::x_9(args);	break;
        case 10: delete (QStyleOptionToolBox*)xself;	break;
    }
}
class x_QStyleOptionToolBoxV2 : public QStyleOptionToolBoxV2 {
    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) {
        // QStyleOptionToolBoxV2* QStyleOptionToolBoxV2()
        x_QStyleOptionToolBoxV2* xret = new x_QStyleOptionToolBoxV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBoxV2() : QStyleOptionToolBoxV2() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionToolBoxV2* QStyleOptionToolBoxV2(const QStyleOptionToolBoxV2&)
        x_QStyleOptionToolBoxV2* xret = new x_QStyleOptionToolBoxV2(*(const QStyleOptionToolBoxV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBoxV2(const QStyleOptionToolBoxV2& x1) : QStyleOptionToolBoxV2(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionToolBoxV2* QStyleOptionToolBoxV2(const QStyleOptionToolBox&)
        x_QStyleOptionToolBoxV2* xret = new x_QStyleOptionToolBoxV2(*(const QStyleOptionToolBox*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBoxV2(const QStyleOptionToolBox& x1) : QStyleOptionToolBoxV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionToolBoxV2& operator=(const QStyleOptionToolBox&)
        QStyleOptionToolBoxV2& xret = this->QStyleOptionToolBoxV2::operator=(*(const QStyleOptionToolBox*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionToolBoxV2* QStyleOptionToolBoxV2(int)
        x_QStyleOptionToolBoxV2* xret = new x_QStyleOptionToolBoxV2((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolBoxV2(int x1) : QStyleOptionToolBoxV2(x1) {}
    void x_6(Smoke::Stack x) {
        // QStyleOptionToolBoxV2::TabPosition position
        x[0].s_enum = this->QStyleOptionToolBoxV2::position;
    }
    void x_7(Smoke::Stack x) {
        // QStyleOptionToolBoxV2::TabPosition position=
        this->QStyleOptionToolBoxV2::position = (QStyleOptionToolBoxV2::TabPosition)x[1].s_enum;
    }
    void x_8(Smoke::Stack x) {
        // QStyleOptionToolBoxV2::SelectedPosition selectedPosition
        x[0].s_enum = this->QStyleOptionToolBoxV2::selectedPosition;
    }
    void x_9(Smoke::Stack x) {
        // QStyleOptionToolBoxV2::SelectedPosition selectedPosition=
        this->QStyleOptionToolBoxV2::selectedPosition = (QStyleOptionToolBoxV2::SelectedPosition)x[1].s_enum;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::Version;
    }
    static void x_11(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::Beginning;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::Middle;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::End;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::OnlyOneTab;
    }
    static void x_15(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::NotAdjacent;
    }
    static void x_16(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::NextIsSelected;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolBoxV2::PreviousIsSelected;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 861: //QStyleOptionToolBoxV2::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBoxV2::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBoxV2::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBoxV2::StyleOptionVersion*)xdata = (QStyleOptionToolBoxV2::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBoxV2::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 862: //QStyleOptionToolBoxV2::TabPosition
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBoxV2::TabPosition;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBoxV2::TabPosition*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBoxV2::TabPosition*)xdata = (QStyleOptionToolBoxV2::TabPosition)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBoxV2::TabPosition*)xdata;
                    break;
            }
            break;
        case 860: //QStyleOptionToolBoxV2::SelectedPosition
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolBoxV2::SelectedPosition;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolBoxV2::SelectedPosition*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolBoxV2::SelectedPosition*)xdata = (QStyleOptionToolBoxV2::SelectedPosition)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolBoxV2::SelectedPosition*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionToolBoxV2() { this->_binding->deleted(358, (void*)this); }
};
void xenum_QStyleOptionToolBoxV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionToolBoxV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionToolBoxV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionToolBoxV2 *xself = (x_QStyleOptionToolBoxV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionToolBoxV2::x_1(args);	break;
        case 2: x_QStyleOptionToolBoxV2::x_2(args);	break;
        case 3: x_QStyleOptionToolBoxV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionToolBoxV2::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: x_QStyleOptionToolBoxV2::x_10(args);	break;
        case 11: x_QStyleOptionToolBoxV2::x_11(args);	break;
        case 12: x_QStyleOptionToolBoxV2::x_12(args);	break;
        case 13: x_QStyleOptionToolBoxV2::x_13(args);	break;
        case 14: x_QStyleOptionToolBoxV2::x_14(args);	break;
        case 15: x_QStyleOptionToolBoxV2::x_15(args);	break;
        case 16: x_QStyleOptionToolBoxV2::x_16(args);	break;
        case 17: x_QStyleOptionToolBoxV2::x_17(args);	break;
        case 18: delete (QStyleOptionToolBoxV2*)xself;	break;
    }
}
class x_QStyleOptionToolButton : public QStyleOptionToolButton {
    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) {
        // QStyleOptionToolButton* QStyleOptionToolButton()
        x_QStyleOptionToolButton* xret = new x_QStyleOptionToolButton();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolButton() : QStyleOptionToolButton() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionToolButton* QStyleOptionToolButton(const QStyleOptionToolButton&)
        x_QStyleOptionToolButton* xret = new x_QStyleOptionToolButton(*(const QStyleOptionToolButton*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolButton(const QStyleOptionToolButton& x1) : QStyleOptionToolButton(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionToolButton* QStyleOptionToolButton(int)
        x_QStyleOptionToolButton* xret = new x_QStyleOptionToolButton((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionToolButton(int x1) : QStyleOptionToolButton(x1) {}
    void x_4(Smoke::Stack x) {
        // QFlags<QStyleOptionToolButton::ToolButtonFeature> features
        x[0].s_uint = (uint)this->QStyleOptionToolButton::features;
    }
    void x_5(Smoke::Stack x) {
        // QFlags<QStyleOptionToolButton::ToolButtonFeature> features=
        this->QStyleOptionToolButton::features = (QFlags<QStyleOptionToolButton::ToolButtonFeature>)x[1].s_uint;
    }
    void x_6(Smoke::Stack x) {
        // QIcon icon
        x[0].s_class = (void*)&this->QStyleOptionToolButton::icon;
    }
    void x_7(Smoke::Stack x) {
        // QIcon icon=
        this->QStyleOptionToolButton::icon = *(const QIcon*)x[1].s_class;
    }
    void x_8(Smoke::Stack x) {
        // QSize iconSize
        x[0].s_class = (void*)&this->QStyleOptionToolButton::iconSize;
    }
    void x_9(Smoke::Stack x) {
        // QSize iconSize=
        this->QStyleOptionToolButton::iconSize = *(const QSize*)x[1].s_class;
    }
    void x_10(Smoke::Stack x) {
        // QString text
        x[0].s_class = (void*)&this->QStyleOptionToolButton::text;
    }
    void x_11(Smoke::Stack x) {
        // QString text=
        this->QStyleOptionToolButton::text = *(const QString*)x[1].s_class;
    }
    void x_12(Smoke::Stack x) {
        // Qt::ArrowType arrowType
        x[0].s_enum = this->QStyleOptionToolButton::arrowType;
    }
    void x_13(Smoke::Stack x) {
        // Qt::ArrowType arrowType=
        this->QStyleOptionToolButton::arrowType = (Qt::ArrowType)x[1].s_enum;
    }
    void x_14(Smoke::Stack x) {
        // Qt::ToolButtonStyle toolButtonStyle
        x[0].s_enum = this->QStyleOptionToolButton::toolButtonStyle;
    }
    void x_15(Smoke::Stack x) {
        // Qt::ToolButtonStyle toolButtonStyle=
        this->QStyleOptionToolButton::toolButtonStyle = (Qt::ToolButtonStyle)x[1].s_enum;
    }
    void x_16(Smoke::Stack x) {
        // QPoint pos
        x[0].s_class = (void*)&this->QStyleOptionToolButton::pos;
    }
    void x_17(Smoke::Stack x) {
        // QPoint pos=
        this->QStyleOptionToolButton::pos = *(const QPoint*)x[1].s_class;
    }
    void x_18(Smoke::Stack x) {
        // QFont font
        x[0].s_class = (void*)&this->QStyleOptionToolButton::font;
    }
    void x_19(Smoke::Stack x) {
        // QFont font=
        this->QStyleOptionToolButton::font = *(const QFont*)x[1].s_class;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::Type;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::Version;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::None;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::Arrow;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::Menu;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::MenuButtonPopup;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::PopupDelay;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionToolButton::HasMenu;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 864: //QStyleOptionToolButton::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolButton::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolButton::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolButton::StyleOptionType*)xdata = (QStyleOptionToolButton::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolButton::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 865: //QStyleOptionToolButton::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolButton::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolButton::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolButton::StyleOptionVersion*)xdata = (QStyleOptionToolButton::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolButton::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 866: //QStyleOptionToolButton::ToolButtonFeature
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionToolButton::ToolButtonFeature;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionToolButton::ToolButtonFeature*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionToolButton::ToolButtonFeature*)xdata = (QStyleOptionToolButton::ToolButtonFeature)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionToolButton::ToolButtonFeature*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionToolButton() { this->_binding->deleted(359, (void*)this); }
};
void xenum_QStyleOptionToolButton(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionToolButton::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionToolButton(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionToolButton *xself = (x_QStyleOptionToolButton*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionToolButton::x_1(args);	break;
        case 2: x_QStyleOptionToolButton::x_2(args);	break;
        case 3: x_QStyleOptionToolButton::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_QStyleOptionToolButton::x_20(args);	break;
        case 21: x_QStyleOptionToolButton::x_21(args);	break;
        case 22: x_QStyleOptionToolButton::x_22(args);	break;
        case 23: x_QStyleOptionToolButton::x_23(args);	break;
        case 24: x_QStyleOptionToolButton::x_24(args);	break;
        case 25: x_QStyleOptionToolButton::x_25(args);	break;
        case 26: x_QStyleOptionToolButton::x_26(args);	break;
        case 27: x_QStyleOptionToolButton::x_27(args);	break;
        case 28: delete (QStyleOptionToolButton*)xself;	break;
    }
}
class x_QStyleOptionViewItem : public QStyleOptionViewItem {
    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) {
        // QStyleOptionViewItem* QStyleOptionViewItem()
        x_QStyleOptionViewItem* xret = new x_QStyleOptionViewItem();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItem() : QStyleOptionViewItem() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionViewItem* QStyleOptionViewItem(const QStyleOptionViewItem&)
        x_QStyleOptionViewItem* xret = new x_QStyleOptionViewItem(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItem(const QStyleOptionViewItem& x1) : QStyleOptionViewItem(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionViewItem* QStyleOptionViewItem(int)
        x_QStyleOptionViewItem* xret = new x_QStyleOptionViewItem((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItem(int x1) : QStyleOptionViewItem(x1) {}
    void x_4(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> displayAlignment
        x[0].s_uint = (uint)this->QStyleOptionViewItem::displayAlignment;
    }
    void x_5(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> displayAlignment=
        this->QStyleOptionViewItem::displayAlignment = (QFlags<Qt::AlignmentFlag>)x[1].s_uint;
    }
    void x_6(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> decorationAlignment
        x[0].s_uint = (uint)this->QStyleOptionViewItem::decorationAlignment;
    }
    void x_7(Smoke::Stack x) {
        // QFlags<Qt::AlignmentFlag> decorationAlignment=
        this->QStyleOptionViewItem::decorationAlignment = (QFlags<Qt::AlignmentFlag>)x[1].s_uint;
    }
    void x_8(Smoke::Stack x) {
        // Qt::TextElideMode textElideMode
        x[0].s_enum = this->QStyleOptionViewItem::textElideMode;
    }
    void x_9(Smoke::Stack x) {
        // Qt::TextElideMode textElideMode=
        this->QStyleOptionViewItem::textElideMode = (Qt::TextElideMode)x[1].s_enum;
    }
    void x_10(Smoke::Stack x) {
        // QStyleOptionViewItem::Position decorationPosition
        x[0].s_enum = this->QStyleOptionViewItem::decorationPosition;
    }
    void x_11(Smoke::Stack x) {
        // QStyleOptionViewItem::Position decorationPosition=
        this->QStyleOptionViewItem::decorationPosition = (QStyleOptionViewItem::Position)x[1].s_enum;
    }
    void x_12(Smoke::Stack x) {
        // QSize decorationSize
        x[0].s_class = (void*)&this->QStyleOptionViewItem::decorationSize;
    }
    void x_13(Smoke::Stack x) {
        // QSize decorationSize=
        this->QStyleOptionViewItem::decorationSize = *(const QSize*)x[1].s_class;
    }
    void x_14(Smoke::Stack x) {
        // QFont font
        x[0].s_class = (void*)&this->QStyleOptionViewItem::font;
    }
    void x_15(Smoke::Stack x) {
        // QFont font=
        this->QStyleOptionViewItem::font = *(const QFont*)x[1].s_class;
    }
    void x_16(Smoke::Stack x) {
        // bool showDecorationSelected
        x[0].s_bool = this->QStyleOptionViewItem::showDecorationSelected;
    }
    void x_17(Smoke::Stack x) {
        // bool showDecorationSelected=
        this->QStyleOptionViewItem::showDecorationSelected = (bool)x[1].s_bool;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Type;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Version;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Left;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Right;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Top;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItem::Bottom;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 870: //QStyleOptionViewItem::StyleOptionType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItem::StyleOptionType;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItem::StyleOptionType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItem::StyleOptionType*)xdata = (QStyleOptionViewItem::StyleOptionType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItem::StyleOptionType*)xdata;
                    break;
            }
            break;
        case 871: //QStyleOptionViewItem::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItem::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItem::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItem::StyleOptionVersion*)xdata = (QStyleOptionViewItem::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItem::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 869: //QStyleOptionViewItem::Position
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItem::Position;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItem::Position*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItem::Position*)xdata = (QStyleOptionViewItem::Position)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItem::Position*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionViewItem() { this->_binding->deleted(360, (void*)this); }
};
void xenum_QStyleOptionViewItem(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionViewItem::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionViewItem(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionViewItem *xself = (x_QStyleOptionViewItem*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionViewItem::x_1(args);	break;
        case 2: x_QStyleOptionViewItem::x_2(args);	break;
        case 3: x_QStyleOptionViewItem::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: x_QStyleOptionViewItem::x_18(args);	break;
        case 19: x_QStyleOptionViewItem::x_19(args);	break;
        case 20: x_QStyleOptionViewItem::x_20(args);	break;
        case 21: x_QStyleOptionViewItem::x_21(args);	break;
        case 22: x_QStyleOptionViewItem::x_22(args);	break;
        case 23: x_QStyleOptionViewItem::x_23(args);	break;
        case 24: delete (QStyleOptionViewItem*)xself;	break;
    }
}
class x_QStyleOptionViewItemV2 : public QStyleOptionViewItemV2 {
    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) {
        // QStyleOptionViewItemV2* QStyleOptionViewItemV2()
        x_QStyleOptionViewItemV2* xret = new x_QStyleOptionViewItemV2();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV2() : QStyleOptionViewItemV2() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionViewItemV2* QStyleOptionViewItemV2(const QStyleOptionViewItemV2&)
        x_QStyleOptionViewItemV2* xret = new x_QStyleOptionViewItemV2(*(const QStyleOptionViewItemV2*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV2(const QStyleOptionViewItemV2& x1) : QStyleOptionViewItemV2(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionViewItemV2* QStyleOptionViewItemV2(const QStyleOptionViewItem&)
        x_QStyleOptionViewItemV2* xret = new x_QStyleOptionViewItemV2(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV2(const QStyleOptionViewItem& x1) : QStyleOptionViewItemV2(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionViewItemV2& operator=(const QStyleOptionViewItem&)
        QStyleOptionViewItemV2& xret = this->QStyleOptionViewItemV2::operator=(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionViewItemV2* QStyleOptionViewItemV2(int)
        x_QStyleOptionViewItemV2* xret = new x_QStyleOptionViewItemV2((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV2(int x1) : QStyleOptionViewItemV2(x1) {}
    void x_6(Smoke::Stack x) {
        // QFlags<QStyleOptionViewItemV2::ViewItemFeature> features
        x[0].s_uint = (uint)this->QStyleOptionViewItemV2::features;
    }
    void x_7(Smoke::Stack x) {
        // QFlags<QStyleOptionViewItemV2::ViewItemFeature> features=
        this->QStyleOptionViewItemV2::features = (QFlags<QStyleOptionViewItemV2::ViewItemFeature>)x[1].s_uint;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::Version;
    }
    static void x_9(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::None;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::WrapText;
    }
    static void x_11(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::Alternate;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::HasCheckIndicator;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::HasDisplay;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV2::HasDecoration;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 874: //QStyleOptionViewItemV2::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItemV2::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItemV2::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItemV2::StyleOptionVersion*)xdata = (QStyleOptionViewItemV2::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItemV2::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 875: //QStyleOptionViewItemV2::ViewItemFeature
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItemV2::ViewItemFeature;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItemV2::ViewItemFeature*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItemV2::ViewItemFeature*)xdata = (QStyleOptionViewItemV2::ViewItemFeature)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItemV2::ViewItemFeature*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionViewItemV2() { this->_binding->deleted(361, (void*)this); }
};
void xenum_QStyleOptionViewItemV2(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionViewItemV2::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionViewItemV2(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionViewItemV2 *xself = (x_QStyleOptionViewItemV2*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionViewItemV2::x_1(args);	break;
        case 2: x_QStyleOptionViewItemV2::x_2(args);	break;
        case 3: x_QStyleOptionViewItemV2::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionViewItemV2::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStyleOptionViewItemV2::x_8(args);	break;
        case 9: x_QStyleOptionViewItemV2::x_9(args);	break;
        case 10: x_QStyleOptionViewItemV2::x_10(args);	break;
        case 11: x_QStyleOptionViewItemV2::x_11(args);	break;
        case 12: x_QStyleOptionViewItemV2::x_12(args);	break;
        case 13: x_QStyleOptionViewItemV2::x_13(args);	break;
        case 14: x_QStyleOptionViewItemV2::x_14(args);	break;
        case 15: delete (QStyleOptionViewItemV2*)xself;	break;
    }
}
class x_QStyleOptionViewItemV3 : public QStyleOptionViewItemV3 {
    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) {
        // QStyleOptionViewItemV3* QStyleOptionViewItemV3()
        x_QStyleOptionViewItemV3* xret = new x_QStyleOptionViewItemV3();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV3() : QStyleOptionViewItemV3() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionViewItemV3* QStyleOptionViewItemV3(const QStyleOptionViewItemV3&)
        x_QStyleOptionViewItemV3* xret = new x_QStyleOptionViewItemV3(*(const QStyleOptionViewItemV3*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV3(const QStyleOptionViewItemV3& x1) : QStyleOptionViewItemV3(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionViewItemV3* QStyleOptionViewItemV3(const QStyleOptionViewItem&)
        x_QStyleOptionViewItemV3* xret = new x_QStyleOptionViewItemV3(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV3(const QStyleOptionViewItem& x1) : QStyleOptionViewItemV3(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionViewItemV3& operator=(const QStyleOptionViewItem&)
        QStyleOptionViewItemV3& xret = this->QStyleOptionViewItemV3::operator=(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionViewItemV3* QStyleOptionViewItemV3(int)
        x_QStyleOptionViewItemV3* xret = new x_QStyleOptionViewItemV3((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV3(int x1) : QStyleOptionViewItemV3(x1) {}
    void x_6(Smoke::Stack x) {
        // QLocale locale
        x[0].s_class = (void*)&this->QStyleOptionViewItemV3::locale;
    }
    void x_7(Smoke::Stack x) {
        // QLocale locale=
        this->QStyleOptionViewItemV3::locale = *(const QLocale*)x[1].s_class;
    }
    void x_8(Smoke::Stack x) {
        // const QWidget* widget
        x[0].s_class = (void*)this->QStyleOptionViewItemV3::widget;
    }
    void x_9(Smoke::Stack x) {
        // const QWidget* widget=
        this->QStyleOptionViewItemV3::widget = (const QWidget*)x[1].s_class;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV3::Version;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 878: //QStyleOptionViewItemV3::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItemV3::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItemV3::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItemV3::StyleOptionVersion*)xdata = (QStyleOptionViewItemV3::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItemV3::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionViewItemV3() { this->_binding->deleted(362, (void*)this); }
};
void xenum_QStyleOptionViewItemV3(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionViewItemV3::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionViewItemV3(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionViewItemV3 *xself = (x_QStyleOptionViewItemV3*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionViewItemV3::x_1(args);	break;
        case 2: x_QStyleOptionViewItemV3::x_2(args);	break;
        case 3: x_QStyleOptionViewItemV3::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionViewItemV3::x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: x_QStyleOptionViewItemV3::x_10(args);	break;
        case 11: delete (QStyleOptionViewItemV3*)xself;	break;
    }
}
class x_QStyleOptionViewItemV4 : public QStyleOptionViewItemV4 {
    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) {
        // QStyleOptionViewItemV4* QStyleOptionViewItemV4()
        x_QStyleOptionViewItemV4* xret = new x_QStyleOptionViewItemV4();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV4() : QStyleOptionViewItemV4() {}
    static void x_2(Smoke::Stack x) {
        // QStyleOptionViewItemV4* QStyleOptionViewItemV4(const QStyleOptionViewItemV4&)
        x_QStyleOptionViewItemV4* xret = new x_QStyleOptionViewItemV4(*(const QStyleOptionViewItemV4*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV4(const QStyleOptionViewItemV4& x1) : QStyleOptionViewItemV4(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStyleOptionViewItemV4* QStyleOptionViewItemV4(const QStyleOptionViewItem&)
        x_QStyleOptionViewItemV4* xret = new x_QStyleOptionViewItemV4(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV4(const QStyleOptionViewItem& x1) : QStyleOptionViewItemV4(x1) {}
    void x_4(Smoke::Stack x) {
        // QStyleOptionViewItemV4& operator=(const QStyleOptionViewItem&)
        QStyleOptionViewItemV4& xret = this->QStyleOptionViewItemV4::operator=(*(const QStyleOptionViewItem*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    static void x_5(Smoke::Stack x) {
        // QStyleOptionViewItemV4* QStyleOptionViewItemV4(int)
        x_QStyleOptionViewItemV4* xret = new x_QStyleOptionViewItemV4((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyleOptionViewItemV4(int x1) : QStyleOptionViewItemV4(x1) {}
    void x_6(Smoke::Stack x) {
        // QModelIndex index
        x[0].s_class = (void*)&this->QStyleOptionViewItemV4::index;
    }
    void x_7(Smoke::Stack x) {
        // QModelIndex index=
        this->QStyleOptionViewItemV4::index = *(const QModelIndex*)x[1].s_class;
    }
    void x_8(Smoke::Stack x) {
        // Qt::CheckState checkState
        x[0].s_enum = this->QStyleOptionViewItemV4::checkState;
    }
    void x_9(Smoke::Stack x) {
        // Qt::CheckState checkState=
        this->QStyleOptionViewItemV4::checkState = (Qt::CheckState)x[1].s_enum;
    }
    void x_10(Smoke::Stack x) {
        // QIcon icon
        x[0].s_class = (void*)&this->QStyleOptionViewItemV4::icon;
    }
    void x_11(Smoke::Stack x) {
        // QIcon icon=
        this->QStyleOptionViewItemV4::icon = *(const QIcon*)x[1].s_class;
    }
    void x_12(Smoke::Stack x) {
        // QString text
        x[0].s_class = (void*)&this->QStyleOptionViewItemV4::text;
    }
    void x_13(Smoke::Stack x) {
        // QString text=
        this->QStyleOptionViewItemV4::text = *(const QString*)x[1].s_class;
    }
    void x_14(Smoke::Stack x) {
        // QStyleOptionViewItemV4::ViewItemPosition viewItemPosition
        x[0].s_enum = this->QStyleOptionViewItemV4::viewItemPosition;
    }
    void x_15(Smoke::Stack x) {
        // QStyleOptionViewItemV4::ViewItemPosition viewItemPosition=
        this->QStyleOptionViewItemV4::viewItemPosition = (QStyleOptionViewItemV4::ViewItemPosition)x[1].s_enum;
    }
    void x_16(Smoke::Stack x) {
        // QBrush backgroundBrush
        x[0].s_class = (void*)&this->QStyleOptionViewItemV4::backgroundBrush;
    }
    void x_17(Smoke::Stack x) {
        // QBrush backgroundBrush=
        this->QStyleOptionViewItemV4::backgroundBrush = *(const QBrush*)x[1].s_class;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::Version;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::Invalid;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::Beginning;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::Middle;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::End;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QStyleOptionViewItemV4::OnlyOne;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 881: //QStyleOptionViewItemV4::StyleOptionVersion
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItemV4::StyleOptionVersion;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItemV4::StyleOptionVersion*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItemV4::StyleOptionVersion*)xdata = (QStyleOptionViewItemV4::StyleOptionVersion)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItemV4::StyleOptionVersion*)xdata;
                    break;
            }
            break;
        case 882: //QStyleOptionViewItemV4::ViewItemPosition
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStyleOptionViewItemV4::ViewItemPosition;
                    break;
                case Smoke::EnumDelete:
                    delete (QStyleOptionViewItemV4::ViewItemPosition*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStyleOptionViewItemV4::ViewItemPosition*)xdata = (QStyleOptionViewItemV4::ViewItemPosition)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStyleOptionViewItemV4::ViewItemPosition*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStyleOptionViewItemV4() { this->_binding->deleted(363, (void*)this); }
};
void xenum_QStyleOptionViewItemV4(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStyleOptionViewItemV4::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStyleOptionViewItemV4(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyleOptionViewItemV4 *xself = (x_QStyleOptionViewItemV4*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStyleOptionViewItemV4::x_1(args);	break;
        case 2: x_QStyleOptionViewItemV4::x_2(args);	break;
        case 3: x_QStyleOptionViewItemV4::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QStyleOptionViewItemV4::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: x_QStyleOptionViewItemV4::x_18(args);	break;
        case 19: x_QStyleOptionViewItemV4::x_19(args);	break;
        case 20: x_QStyleOptionViewItemV4::x_20(args);	break;
        case 21: x_QStyleOptionViewItemV4::x_21(args);	break;
        case 22: x_QStyleOptionViewItemV4::x_22(args);	break;
        case 23: x_QStyleOptionViewItemV4::x_23(args);	break;
        case 24: delete (QStyleOptionViewItemV4*)xself;	break;
    }
}
class x_QStylePainter : public QStylePainter {
    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) {
        // QStylePainter* QStylePainter()
        x_QStylePainter* xret = new x_QStylePainter();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStylePainter() : QStylePainter() {}
    static void x_2(Smoke::Stack x) {
        // QStylePainter* QStylePainter(QWidget*)
        x_QStylePainter* xret = new x_QStylePainter((QWidget*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStylePainter(QWidget* x1) : QStylePainter(x1) {}
    static void x_3(Smoke::Stack x) {
        // QStylePainter* QStylePainter(QPaintDevice*, QWidget*)
        x_QStylePainter* xret = new x_QStylePainter((QPaintDevice*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStylePainter(QPaintDevice* x1, QWidget* x2) : QStylePainter(x1, x2) {}
    void x_4(Smoke::Stack x) {
        // bool begin(QWidget*)
        bool xret = this->QStylePainter::begin((QWidget*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool begin(QPaintDevice*, QWidget*)
        bool xret = this->QStylePainter::begin((QPaintDevice*)x[1].s_class,(QWidget*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // void drawPrimitive(QStyle::PrimitiveElement, const QStyleOption&)
        this->QStylePainter::drawPrimitive((QStyle::PrimitiveElement)x[1].s_enum,*(const QStyleOption*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // void drawControl(QStyle::ControlElement, const QStyleOption&)
        this->QStylePainter::drawControl((QStyle::ControlElement)x[1].s_enum,*(const QStyleOption*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void drawComplexControl(QStyle::ComplexControl, const QStyleOptionComplex&)
        this->QStylePainter::drawComplexControl((QStyle::ComplexControl)x[1].s_enum,*(const QStyleOptionComplex*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // void drawItemText(const QRect&, int, const QPalette&, bool, const QString&, QPalette::ColorRole)
        this->QStylePainter::drawItemText(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QPalette*)x[3].s_class,(bool)x[4].s_bool,*(const QString*)x[5].s_class,(QPalette::ColorRole)x[6].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void drawItemPixmap(const QRect&, int, const QPixmap&)
        this->QStylePainter::drawItemPixmap(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QPixmap*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // QStyle* style() const
        QStyle* xret = ((const x_QStylePainter*)this)->QStylePainter::style();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // void drawItemText(const QRect&, int, const QPalette&, bool, const QString&)
        this->QStylePainter::drawItemText(*(const QRect*)x[1].s_class,(int)x[2].s_int,*(const QPalette*)x[3].s_class,(bool)x[4].s_bool,*(const QString*)x[5].s_class,(QPalette::ColorRole)QPalette::NoRole);
        (void)x; // noop (for compiler warning)
    }
    ~x_QStylePainter() { this->_binding->deleted(364, (void*)this); }
};
void xcall_QStylePainter(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStylePainter *xself = (x_QStylePainter*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStylePainter::x_1(args);	break;
        case 2: x_QStylePainter::x_2(args);	break;
        case 3: x_QStylePainter::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: delete (QStylePainter*)xself;	break;
    }
}
class x_QStylePlugin : public QStylePlugin, 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<QStylePlugin*>(this))) {
            const QMetaObject* xret = ((const x_QStylePlugin*)this)->QStylePlugin::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QStylePlugin*)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<QStylePlugin*>(this))) {
            void* xret = this->QStylePlugin::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 = QStylePlugin::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 = QStylePlugin::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 = QStylePlugin::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 = QStylePlugin::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<QStylePlugin*>(this))) {
            int xret = this->QStylePlugin::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) {
        // QStylePlugin* QStylePlugin(QObject*)
        x_QStylePlugin* xret = new x_QStylePlugin((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStylePlugin(QObject* x1) : QStylePlugin(x1) {}
    void x_9(Smoke::Stack x) {
        // virtual QStringList keys() const = 0
        QStringList xret = ((const x_QStylePlugin*)this)->keys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_10(Smoke::Stack x) {
        // virtual QStyle* create(const QString&) = 0
        QStyle* xret = this->create(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_11(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QStylePlugin::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_12(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QStylePlugin::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // QStylePlugin* QStylePlugin()
        x_QStylePlugin* xret = new x_QStylePlugin((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_14(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QStylePlugin::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(12530, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QStylePlugin::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12531, (void*)this, x)) return (void*)x[0].s_class;
        return this->QStylePlugin::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(12536, (void*)this, x)) return (int)x[0].s_int;
        return this->QStylePlugin::qt_metacall(x1, x2, x3);
    }
    virtual QStringList keys() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(12538, (void*)this, x, true /*pure virtual*/);
        QStringList* xptr = (QStringList*)x[0].s_class;
        QStringList xret(*xptr);
        delete xptr;
        return xret;
    }
    virtual QStyle* create(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(12539, (void*)this, x, true /*pure virtual*/);
        return (QStyle*)x[0].s_class;
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(8375, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8379, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_QStylePlugin() { this->_binding->deleted(365, (void*)this); }
};
void xcall_QStylePlugin(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStylePlugin *xself = (x_QStylePlugin*)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_QStylePlugin::x_3(args);	break;
        case 4: x_QStylePlugin::x_4(args);	break;
        case 5: x_QStylePlugin::x_5(args);	break;
        case 6: x_QStylePlugin::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStylePlugin::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_QStylePlugin::x_11(args);	break;
        case 12: x_QStylePlugin::x_12(args);	break;
        case 13: x_QStylePlugin::x_13(args);	break;
        case 14: x_QStylePlugin::x_14(args);	break;
        case 15: delete (QStylePlugin*)xself;	break;
    }
}
class x_QStyledItemDelegate : public QStyledItemDelegate, 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<QStyledItemDelegate*>(this))) {
            const QMetaObject* xret = ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QStyledItemDelegate*)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<QStyledItemDelegate*>(this))) {
            void* xret = this->QStyledItemDelegate::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 = QStyledItemDelegate::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 = QStyledItemDelegate::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 = QStyledItemDelegate::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 = QStyledItemDelegate::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<QStyledItemDelegate*>(this))) {
            int xret = this->QStyledItemDelegate::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) {
        // QStyledItemDelegate* QStyledItemDelegate(QObject*)
        x_QStyledItemDelegate* xret = new x_QStyledItemDelegate((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStyledItemDelegate(QObject* x1) : QStyledItemDelegate(x1) {}
    void x_9(Smoke::Stack x) {
        // void paint(QPainter*, const QStyleOptionViewItem&, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::paint((QPainter*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QStyledItemDelegate*)this)->paint((QPainter*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_10(Smoke::Stack x) {
        // QSize sizeHint(const QStyleOptionViewItem&, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            QSize xret = ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::sizeHint(*(const QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            x[0].s_class = (void*)new QSize(xret);
        } else {
            QSize xret = ((const x_QStyledItemDelegate*)this)->sizeHint(*(const QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            x[0].s_class = (void*)new QSize(xret);
        }
    }
    void x_11(Smoke::Stack x) {
        // QWidget* createEditor(QWidget*, const QStyleOptionViewItem&, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            QWidget* xret = ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::createEditor((QWidget*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            x[0].s_class = (void*)xret;
        } else {
            QWidget* xret = ((const x_QStyledItemDelegate*)this)->createEditor((QWidget*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    void x_12(Smoke::Stack x) {
        // void setEditorData(QWidget*, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::setEditorData((QWidget*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QStyledItemDelegate*)this)->setEditorData((QWidget*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // void setModelData(QWidget*, QAbstractItemModel*, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::setModelData((QWidget*)x[1].s_class,(QAbstractItemModel*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QStyledItemDelegate*)this)->setModelData((QWidget*)x[1].s_class,(QAbstractItemModel*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_14(Smoke::Stack x) {
        // void updateEditorGeometry(QWidget*, const QStyleOptionViewItem&, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::updateEditorGeometry((QWidget*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QStyledItemDelegate*)this)->updateEditorGeometry((QWidget*)x[1].s_class,*(const QStyleOptionViewItem*)x[2].s_class,*(const QModelIndex*)x[3].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // QItemEditorFactory* itemEditorFactory() const
        QItemEditorFactory* xret = ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::itemEditorFactory();
        x[0].s_class = (void*)xret;
    }
    void x_16(Smoke::Stack x) {
        // void setItemEditorFactory(QItemEditorFactory*)
        this->QStyledItemDelegate::setItemEditorFactory((QItemEditorFactory*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // virtual QString displayText(const QVariant&, const QLocale&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            QString xret = ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::displayText(*(const QVariant*)x[1].s_class,*(const QLocale*)x[2].s_class);
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = ((const x_QStyledItemDelegate*)this)->displayText(*(const QVariant*)x[1].s_class,*(const QLocale*)x[2].s_class);
            x[0].s_class = (void*)new QString(xret);
        }
    }
    void x_18(Smoke::Stack x) {
        // virtual void initStyleOption(QStyleOptionViewItem*, const QModelIndex&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            ((const x_QStyledItemDelegate*)this)->QStyledItemDelegate::initStyleOption((QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            ((const x_QStyledItemDelegate*)this)->initStyleOption((QStyleOptionViewItem*)x[1].s_class,*(const QModelIndex*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // bool eventFilter(QObject*, QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            bool xret = this->QStyledItemDelegate::eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_20(Smoke::Stack x) {
        // bool editorEvent(QEvent*, QAbstractItemModel*, const QStyleOptionViewItem&, const QModelIndex&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStyledItemDelegate*>(this))) {
            bool xret = this->QStyledItemDelegate::editorEvent((QEvent*)x[1].s_class,(QAbstractItemModel*)x[2].s_class,*(const QStyleOptionViewItem*)x[3].s_class,*(const QModelIndex*)x[4].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->editorEvent((QEvent*)x[1].s_class,(QAbstractItemModel*)x[2].s_class,*(const QStyleOptionViewItem*)x[3].s_class,*(const QModelIndex*)x[4].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_21(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QStyledItemDelegate::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_22(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QStyledItemDelegate::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_23(Smoke::Stack x) {
        // QStyledItemDelegate* QStyledItemDelegate()
        x_QStyledItemDelegate* xret = new x_QStyledItemDelegate((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_24(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QStyledItemDelegate::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(12545, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QStyledItemDelegate::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12546, (void*)this, x)) return (void*)x[0].s_class;
        return this->QStyledItemDelegate::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(12551, (void*)this, x)) return (int)x[0].s_int;
        return this->QStyledItemDelegate::qt_metacall(x1, x2, x3);
    }
    virtual QString displayText(const QVariant& x1, const QLocale& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(12561, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QStyledItemDelegate::displayText(x1, x2);
    }
    virtual void initStyleOption(QStyleOptionViewItem* x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(12562, (void*)this, x)) return;
        this->QStyledItemDelegate::initStyleOption(x1, x2);
    }
    virtual void paint(QPainter* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(12553, (void*)this, x)) return;
        this->QStyledItemDelegate::paint(x1, x2, x3);
    }
    virtual QSize sizeHint(const QStyleOptionViewItem& x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(12554, (void*)this, x)) {
            QSize* xptr = (QSize*)x[0].s_class;
            QSize xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QStyledItemDelegate::sizeHint(x1, x2);
    }
    virtual QWidget* createEditor(QWidget* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(12555, (void*)this, x)) return (QWidget*)x[0].s_class;
        return this->QStyledItemDelegate::createEditor(x1, x2, x3);
    }
    virtual void setEditorData(QWidget* x1, const QModelIndex& x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(12556, (void*)this, x)) return;
        this->QStyledItemDelegate::setEditorData(x1, x2);
    }
    virtual void setModelData(QWidget* x1, QAbstractItemModel* x2, const QModelIndex& x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(12557, (void*)this, x)) return;
        this->QStyledItemDelegate::setModelData(x1, x2, x3);
    }
    virtual void updateEditorGeometry(QWidget* x1, const QStyleOptionViewItem& x2, const QModelIndex& x3) const {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(12558, (void*)this, x)) return;
        this->QStyledItemDelegate::updateEditorGeometry(x1, x2, x3);
    }
    virtual bool editorEvent(QEvent* x1, QAbstractItemModel* x2, const QStyleOptionViewItem& x3, const QModelIndex& x4) {
        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(12564, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStyledItemDelegate::editorEvent(x1, x2, x3, x4);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(12563, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStyledItemDelegate::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8379, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_QStyledItemDelegate() { this->_binding->deleted(366, (void*)this); }
};
void xcall_QStyledItemDelegate(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStyledItemDelegate *xself = (x_QStyledItemDelegate*)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_QStyledItemDelegate::x_3(args);	break;
        case 4: x_QStyledItemDelegate::x_4(args);	break;
        case 5: x_QStyledItemDelegate::x_5(args);	break;
        case 6: x_QStyledItemDelegate::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStyledItemDelegate::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: x_QStyledItemDelegate::x_21(args);	break;
        case 22: x_QStyledItemDelegate::x_22(args);	break;
        case 23: x_QStyledItemDelegate::x_23(args);	break;
        case 24: x_QStyledItemDelegate::x_24(args);	break;
        case 25: delete (QStyledItemDelegate*)xself;	break;
    }
}
class x_QSwipeGesture : public QSwipeGesture, 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<QSwipeGesture*>(this))) {
            const QMetaObject* xret = ((const x_QSwipeGesture*)this)->QSwipeGesture::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QSwipeGesture*)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<QSwipeGesture*>(this))) {
            void* xret = this->QSwipeGesture::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 = QSwipeGesture::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 = QSwipeGesture::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 = QSwipeGesture::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 = QSwipeGesture::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<QSwipeGesture*>(this))) {
            int xret = this->QSwipeGesture::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) {
        // QSwipeGesture* QSwipeGesture(QObject*)
        x_QSwipeGesture* xret = new x_QSwipeGesture((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSwipeGesture(QObject* x1) : QSwipeGesture(x1) {}
    void x_9(Smoke::Stack x) {
        // QSwipeGesture::SwipeDirection horizontalDirection() const
        QSwipeGesture::SwipeDirection xret = ((const x_QSwipeGesture*)this)->QSwipeGesture::horizontalDirection();
        x[0].s_enum = xret;
    }
    void x_10(Smoke::Stack x) {
        // QSwipeGesture::SwipeDirection verticalDirection() const
        QSwipeGesture::SwipeDirection xret = ((const x_QSwipeGesture*)this)->QSwipeGesture::verticalDirection();
        x[0].s_enum = xret;
    }
    void x_11(Smoke::Stack x) {
        // double swipeAngle() const
        double xret = ((const x_QSwipeGesture*)this)->QSwipeGesture::swipeAngle();
        x[0].s_double = xret;
    }
    void x_12(Smoke::Stack x) {
        // void setSwipeAngle(double)
        this->QSwipeGesture::setSwipeAngle((double)x[1].s_double);
        (void)x; // noop (for compiler warning)
    }
    static void x_13(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QSwipeGesture::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_14(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QSwipeGesture::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_15(Smoke::Stack x) {
        // QSwipeGesture* QSwipeGesture()
        x_QSwipeGesture* xret = new x_QSwipeGesture((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_16(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QSwipeGesture::staticMetaObject;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QSwipeGesture::NoDirection;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QSwipeGesture::Left;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QSwipeGesture::Right;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QSwipeGesture::Up;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QSwipeGesture::Down;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(12570, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QSwipeGesture::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12571, (void*)this, x)) return (void*)x[0].s_class;
        return this->QSwipeGesture::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(12576, (void*)this, x)) return (int)x[0].s_int;
        return this->QSwipeGesture::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(8375, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8379, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 887: //QSwipeGesture::SwipeDirection
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSwipeGesture::SwipeDirection;
                    break;
                case Smoke::EnumDelete:
                    delete (QSwipeGesture::SwipeDirection*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSwipeGesture::SwipeDirection*)xdata = (QSwipeGesture::SwipeDirection)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSwipeGesture::SwipeDirection*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSwipeGesture() { this->_binding->deleted(367, (void*)this); }
};
void xenum_QSwipeGesture(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSwipeGesture::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSwipeGesture(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSwipeGesture *xself = (x_QSwipeGesture*)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_QSwipeGesture::x_3(args);	break;
        case 4: x_QSwipeGesture::x_4(args);	break;
        case 5: x_QSwipeGesture::x_5(args);	break;
        case 6: x_QSwipeGesture::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSwipeGesture::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: x_QSwipeGesture::x_13(args);	break;
        case 14: x_QSwipeGesture::x_14(args);	break;
        case 15: x_QSwipeGesture::x_15(args);	break;
        case 16: x_QSwipeGesture::x_16(args);	break;
        case 17: x_QSwipeGesture::x_17(args);	break;
        case 18: x_QSwipeGesture::x_18(args);	break;
        case 19: x_QSwipeGesture::x_19(args);	break;
        case 20: x_QSwipeGesture::x_20(args);	break;
        case 21: x_QSwipeGesture::x_21(args);	break;
        case 22: delete (QSwipeGesture*)xself;	break;
    }
}
class x_QSyntaxHighlighter : public QSyntaxHighlighter, 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<QSyntaxHighlighter*>(this))) {
            const QMetaObject* xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QSyntaxHighlighter*)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<QSyntaxHighlighter*>(this))) {
            void* xret = this->QSyntaxHighlighter::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 = QSyntaxHighlighter::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 = QSyntaxHighlighter::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 = QSyntaxHighlighter::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 = QSyntaxHighlighter::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<QSyntaxHighlighter*>(this))) {
            int xret = this->QSyntaxHighlighter::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) {
        // QSyntaxHighlighter* QSyntaxHighlighter(QObject*)
        x_QSyntaxHighlighter* xret = new x_QSyntaxHighlighter((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSyntaxHighlighter(QObject* x1) : QSyntaxHighlighter(x1) {}
    static void x_9(Smoke::Stack x) {
        // QSyntaxHighlighter* QSyntaxHighlighter(QTextDocument*)
        x_QSyntaxHighlighter* xret = new x_QSyntaxHighlighter((QTextDocument*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSyntaxHighlighter(QTextDocument* x1) : QSyntaxHighlighter(x1) {}
    static void x_10(Smoke::Stack x) {
        // QSyntaxHighlighter* QSyntaxHighlighter(QTextEdit*)
        x_QSyntaxHighlighter* xret = new x_QSyntaxHighlighter((QTextEdit*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSyntaxHighlighter(QTextEdit* x1) : QSyntaxHighlighter(x1) {}
    void x_11(Smoke::Stack x) {
        // void setDocument(QTextDocument*)
        this->QSyntaxHighlighter::setDocument((QTextDocument*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QTextDocument* document() const
        QTextDocument* xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::document();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // void rehighlight()
        this->QSyntaxHighlighter::rehighlight();
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void rehighlightBlock(const QTextBlock&)
        this->QSyntaxHighlighter::rehighlightBlock(*(const QTextBlock*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // virtual void highlightBlock(const QString&) = 0
        this->highlightBlock(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void setFormat(int, int, const QTextCharFormat&)
        this->QSyntaxHighlighter::setFormat((int)x[1].s_int,(int)x[2].s_int,*(const QTextCharFormat*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // void setFormat(int, int, const QColor&)
        this->QSyntaxHighlighter::setFormat((int)x[1].s_int,(int)x[2].s_int,*(const QColor*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void setFormat(int, int, const QFont&)
        this->QSyntaxHighlighter::setFormat((int)x[1].s_int,(int)x[2].s_int,*(const QFont*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QTextCharFormat format(int) const
        QTextCharFormat xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::format((int)x[1].s_int);
        x[0].s_class = (void*)new QTextCharFormat(xret);
    }
    void x_20(Smoke::Stack x) {
        // int previousBlockState() const
        int xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::previousBlockState();
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // int currentBlockState() const
        int xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::currentBlockState();
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // void setCurrentBlockState(int)
        this->QSyntaxHighlighter::setCurrentBlockState((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void setCurrentBlockUserData(QTextBlockUserData*)
        this->QSyntaxHighlighter::setCurrentBlockUserData((QTextBlockUserData*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // QTextBlockUserData* currentBlockUserData() const
        QTextBlockUserData* xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::currentBlockUserData();
        x[0].s_class = (void*)xret;
    }
    void x_25(Smoke::Stack x) {
        // QTextBlock currentBlock() const
        QTextBlock xret = ((const x_QSyntaxHighlighter*)this)->QSyntaxHighlighter::currentBlock();
        x[0].s_class = (void*)new QTextBlock(xret);
    }
    static void x_26(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QSyntaxHighlighter::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_27(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QSyntaxHighlighter::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_28(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QSyntaxHighlighter::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(12592, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QSyntaxHighlighter::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12593, (void*)this, x)) return (void*)x[0].s_class;
        return this->QSyntaxHighlighter::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(12598, (void*)this, x)) return (int)x[0].s_int;
        return this->QSyntaxHighlighter::qt_metacall(x1, x2, x3);
    }
    virtual void highlightBlock(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(12606, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8374, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(8375, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8379, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_QSyntaxHighlighter() { this->_binding->deleted(368, (void*)this); }
};
void xcall_QSyntaxHighlighter(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSyntaxHighlighter *xself = (x_QSyntaxHighlighter*)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_QSyntaxHighlighter::x_3(args);	break;
        case 4: x_QSyntaxHighlighter::x_4(args);	break;
        case 5: x_QSyntaxHighlighter::x_5(args);	break;
        case 6: x_QSyntaxHighlighter::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSyntaxHighlighter::x_8(args);	break;
        case 9: x_QSyntaxHighlighter::x_9(args);	break;
        case 10: x_QSyntaxHighlighter::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_QSyntaxHighlighter::x_26(args);	break;
        case 27: x_QSyntaxHighlighter::x_27(args);	break;
        case 28: x_QSyntaxHighlighter::x_28(args);	break;
        case 29: delete (QSyntaxHighlighter*)xself;	break;
    }
}
class x_QSystemTrayIcon : public QSystemTrayIcon, 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<QSystemTrayIcon*>(this))) {
            const QMetaObject* xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QSystemTrayIcon*)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<QSystemTrayIcon*>(this))) {
            void* xret = this->QSystemTrayIcon::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 = QSystemTrayIcon::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 = QSystemTrayIcon::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 = QSystemTrayIcon::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 = QSystemTrayIcon::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<QSystemTrayIcon*>(this))) {
            int xret = this->QSystemTrayIcon::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) {
        // QSystemTrayIcon* QSystemTrayIcon(QObject*)
        x_QSystemTrayIcon* xret = new x_QSystemTrayIcon((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSystemTrayIcon(QObject* x1) : QSystemTrayIcon(x1) {}
    static void x_9(Smoke::Stack x) {
        // QSystemTrayIcon* QSystemTrayIcon(const QIcon&, QObject*)
        x_QSystemTrayIcon* xret = new x_QSystemTrayIcon(*(const QIcon*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSystemTrayIcon(const QIcon& x1, QObject* x2) : QSystemTrayIcon(x1, x2) {}
    void x_10(Smoke::Stack x) {
        // void setContextMenu(QMenu*)
        this->QSystemTrayIcon::setContextMenu((QMenu*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // QMenu* contextMenu() const
        QMenu* xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::contextMenu();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // QIcon icon() const
        QIcon xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::icon();
        x[0].s_class = (void*)new QIcon(xret);
    }
    void x_13(Smoke::Stack x) {
        // void setIcon(const QIcon&)
        this->QSystemTrayIcon::setIcon(*(const QIcon*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QString toolTip() const
        QString xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::toolTip();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_15(Smoke::Stack x) {
        // void setToolTip(const QString&)
        this->QSystemTrayIcon::setToolTip(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_16(Smoke::Stack x) {
        // static bool isSystemTrayAvailable()
        bool xret = QSystemTrayIcon::isSystemTrayAvailable();
        x[0].s_bool = xret;
    }
    static void x_17(Smoke::Stack x) {
        // static bool supportsMessages()
        bool xret = QSystemTrayIcon::supportsMessages();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // void showMessage(const QString&, const QString&, QSystemTrayIcon::MessageIcon, int)
        this->QSystemTrayIcon::showMessage(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(QSystemTrayIcon::MessageIcon)x[3].s_enum,(int)x[4].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // QRect geometry() const
        QRect xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::geometry();
        x[0].s_class = (void*)new QRect(xret);
    }
    void x_20(Smoke::Stack x) {
        // bool isVisible() const
        bool xret = ((const x_QSystemTrayIcon*)this)->QSystemTrayIcon::isVisible();
        x[0].s_bool = xret;
    }
    void x_21(Smoke::Stack x) {
        // void setVisible(bool)
        this->QSystemTrayIcon::setVisible((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void show()
        this->QSystemTrayIcon::show();
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void hide()
        this->QSystemTrayIcon::hide();
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void activated(QSystemTrayIcon::ActivationReason)
        this->QSystemTrayIcon::activated((QSystemTrayIcon::ActivationReason)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void messageClicked()
        this->QSystemTrayIcon::messageClicked();
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSystemTrayIcon*>(this))) {
            bool xret = this->QSystemTrayIcon::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_27(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QSystemTrayIcon::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_28(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QSystemTrayIcon::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_29(Smoke::Stack x) {
        // QSystemTrayIcon* QSystemTrayIcon()
        x_QSystemTrayIcon* xret = new x_QSystemTrayIcon((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_30(Smoke::Stack x) {
        // QSystemTrayIcon* QSystemTrayIcon(const QIcon&)
        x_QSystemTrayIcon* xret = new x_QSystemTrayIcon(*(const QIcon*)x[1].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_31(Smoke::Stack x) {
        // void showMessage(const QString&, const QString&)
        this->QSystemTrayIcon::showMessage(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(QSystemTrayIcon::MessageIcon)QSystemTrayIcon::Information,(int)10000);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // void showMessage(const QString&, const QString&, QSystemTrayIcon::MessageIcon)
        this->QSystemTrayIcon::showMessage(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(QSystemTrayIcon::MessageIcon)x[3].s_enum,(int)10000);
        (void)x; // noop (for compiler warning)
    }
    static void x_33(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QSystemTrayIcon::staticMetaObject;
    }
    static void x_34(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Unknown;
    }
    static void x_35(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Context;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::DoubleClick;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Trigger;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::MiddleClick;
    }
    static void x_39(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::NoIcon;
    }
    static void x_40(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Information;
    }
    static void x_41(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Warning;
    }
    static void x_42(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemTrayIcon::Critical;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(12621, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QSystemTrayIcon::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12622, (void*)this, x)) return (void*)x[0].s_class;
        return this->QSystemTrayIcon::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(12627, (void*)this, x)) return (int)x[0].s_int;
        return this->QSystemTrayIcon::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(12646, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QSystemTrayIcon::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(8375, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8376, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8377, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8378, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8379, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(8380, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 890: //QSystemTrayIcon::ActivationReason
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSystemTrayIcon::ActivationReason;
                    break;
                case Smoke::EnumDelete:
                    delete (QSystemTrayIcon::ActivationReason*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSystemTrayIcon::ActivationReason*)xdata = (QSystemTrayIcon::ActivationReason)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSystemTrayIcon::ActivationReason*)xdata;
                    break;
            }
            break;
        case 891: //QSystemTrayIcon::MessageIcon
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSystemTrayIcon::MessageIcon;
                    break;
                case Smoke::EnumDelete:
                    delete (QSystemTrayIcon::MessageIcon*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSystemTrayIcon::MessageIcon*)xdata = (QSystemTrayIcon::MessageIcon)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSystemTrayIcon::MessageIcon*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSystemTrayIcon() { this->_binding->deleted(369, (void*)this); }
};
void xenum_QSystemTrayIcon(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSystemTrayIcon::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSystemTrayIcon(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSystemTrayIcon *xself = (x_QSystemTrayIcon*)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_QSystemTrayIcon::x_3(args);	break;
        case 4: x_QSystemTrayIcon::x_4(args);	break;
        case 5: x_QSystemTrayIcon::x_5(args);	break;
        case 6: x_QSystemTrayIcon::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSystemTrayIcon::x_8(args);	break;
        case 9: x_QSystemTrayIcon::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_QSystemTrayIcon::x_16(args);	break;
        case 17: x_QSystemTrayIcon::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_QSystemTrayIcon::x_27(args);	break;
        case 28: x_QSystemTrayIcon::x_28(args);	break;
        case 29: x_QSystemTrayIcon::x_29(args);	break;
        case 30: x_QSystemTrayIcon::x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: x_QSystemTrayIcon::x_33(args);	break;
        case 34: x_QSystemTrayIcon::x_34(args);	break;
        case 35: x_QSystemTrayIcon::x_35(args);	break;
        case 36: x_QSystemTrayIcon::x_36(args);	break;
        case 37: x_QSystemTrayIcon::x_37(args);	break;
        case 38: x_QSystemTrayIcon::x_38(args);	break;
        case 39: x_QSystemTrayIcon::x_39(args);	break;
        case 40: x_QSystemTrayIcon::x_40(args);	break;
        case 41: x_QSystemTrayIcon::x_41(args);	break;
        case 42: x_QSystemTrayIcon::x_42(args);	break;
        case 43: delete (QSystemTrayIcon*)xself;	break;
    }
}

}
