//Auto-generated by kalyptus. DO NOT EDIT.
#include <smoke.h>
#include <qt_smoke.h>
#include <qiconset.h>

class x_QIconFactory : public QIconFactory {
public:
    static void x_0(Smoke::Stack x) {
	// QIconFactory()
	x_QIconFactory* xret = new x_QIconFactory();
	x[0].s_class = (void*)xret;
    }
    x_QIconFactory() : QIconFactory() {
    }
    void x_1(Smoke::Stack x) {
	// createPixmap(const QIconSet&, QIconSet::Size, QIconSet::Mode, QIconSet::State)
	QPixmap* xret = this->QIconFactory::createPixmap(*(const QIconSet *)x[1].s_class,(QIconSet::Size)x[2].s_enum,(QIconSet::Mode)x[3].s_enum,(QIconSet::State)x[4].s_enum);
	x[0].s_class = (void*)xret;
    }
    void x_2(Smoke::Stack x) {
	// setAutoDelete(bool)
	this->QIconFactory::setAutoDelete((bool)x[1].s_bool);
	(void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) const {
	// autoDelete()
	bool xret = this->QIconFactory::autoDelete();
	x[0].s_bool = xret;
    }
    static void x_4(Smoke::Stack x) {
	// defaultFactory()
	QIconFactory* xret = QIconFactory::defaultFactory();
	x[0].s_class = (void*)xret;
    }
    static void x_5(Smoke::Stack x) {
	// installDefaultFactory(QIconFactory*)
	QIconFactory::installDefaultFactory((QIconFactory*)x[1].s_class);
	(void)x; // noop (for compiler warning)
    }
    virtual QPixmap* createPixmap(const QIconSet& x1, QIconSet::Size x2, QIconSet::Mode x3, QIconSet::State x4) {
	Smoke::StackItem x[5];
	x[1].s_class = (void*)&x1;
	x[2].s_enum = x2;
	x[3].s_enum = x3;
	x[4].s_enum = x4;
	if(qt_Smoke->binding->callMethod(4410, (void*)this, x)) return (QPixmap*)x[0].s_class;
	return this->QIconFactory::createPixmap(x1, x2, x3, x4);
    }
    ~x_QIconFactory() { qt_Smoke->binding->deleted(157, (void*)this); }
};
void xcall_QIconFactory(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QIconFactory *xself = (x_QIconFactory*)obj;
    switch(xi) {
	case 0: x_QIconFactory::x_0(args);	break;
	case 1: xself->x_1(args);	break;
	case 2: xself->x_2(args);	break;
	case 3: xself->x_3(args);	break;
	case 4: x_QIconFactory::x_4(args);	break;
	case 5: x_QIconFactory::x_5(args);	break;
	case 6: delete (QIconFactory*)xself;	break;
    }
}
