/****************************************************************************
** Image collection for project 'qtconfig'.
**
** Generated from reading image files: 
**      /usr/src/ports/qt3/qt3-3.3.8b-20.i686/src/qt-x11-free-3.3.8b/tools/qtconfig/images/appicon.png
**
** Created by The User Interface Compiler
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/

#include <qimage.h>
#include <qdict.h>
#include <qmime.h>
#include <qdragobject.h>

// /usr/src/ports/qt3/qt3-3.3.8b-20.i686/src/qt-x11-free-3.3.8b/tools/qtconfig/images/appicon.png
static const unsigned char image_0_data[] = {
    0x00,0x00,0x0a,0x28,0x78,0x9c,0xe5,0x96,0xdb,0xb2,0xdb,0x20,0x0c,0x45,
    0xb9,0x08,0xe1,0x58,0x06,0xf2,0xff,0x5f,0x5b,0x49,0x5c,0x8c,0x6d,0x72,
    0xda,0x3c,0xb5,0x33,0xf5,0x43,0x26,0x31,0x59,0x96,0xb4,0xb7,0x04,0x7e,
    0x6f,0x5f,0x5e,0x6f,0x63,0xbe,0x45,0xb6,0xed,0xbf,0x61,0x42,0x08,0x5f,
    0x31,0x98,0xad,0x3f,0x4a,0x39,0xbc,0xcd,0xf8,0x47,0x4c,0x88,0x8e,0x4c,
    0xbf,0x88,0x5c,0x7c,0xc4,0x7b,0x30,0xd1,0xc3,0x89,0x80,0x50,0xfe,0x4e,
    0xdd,0x98,0xdd,0x92,0x01,0x30,0x97,0x0b,0xc8,0xee,0x3f,0x30,0xe8,0xae,
    0x40,0x7f,0x80,0xdb,0x3f,0x32,0x8c,0xe8,0x9f,0x34,0xa5,0x52,0x0a,0x80,
    0xfc,0x16,0xca,0xe1,0x07,0x66,0x77,0x2d,0x08,0xa4,0x1c,0x31,0x04,0x7c,
    0x59,0xdf,0xe3,0xce,0x91,0x66,0xc6,0xf2,0x7a,0xe1,0x10,0xe9,0x2c,0x3a,
    0xc4,0xc4,0xb7,0x40,0x6a,0x5a,0x32,0x91,0x34,0xaf,0x5b,0xc5,0xc1,0x82,
    0xa4,0x47,0x14,0x17,0x4c,0x48,0x92,0xbd,0xa1,0x3c,0xcb,0x28,0x1f,0xb9,
    0x6a,0xef,0xc3,0x93,0x89,0xe2,0x0b,0x18,0x3b,0x99,0x81,0x2e,0xd7,0x48,
    0xaa,0x61,0x7c,0x32,0xd5,0xfd,0x34,0x25,0x86,0x5c,0x8b,0x40,0x7b,0x52,
    0x61,0xdc,0x83,0x41,0x12,0x85,0x21,0x4e,0x08,0x8b,0x46,0x9a,0x6a,0xac,
    0xd6,0xbe,0xee,0x4c,0xd6,0xa4,0x53,0x98,0x10,0xa3,0x6e,0x65,0xbe,0x95,
    0x24,0xbb,0x51,0xe9,0x60,0xac,0x32,0xa7,0x00,0xa8,0x92,0x40,0x75,0x26,
    0x6b,0x45,0xf6,0xce,0xf8,0x6b,0x9d,0x1c,0x45,0xc2,0xb0,0xbd,0xa8,0xfa,
    0xc8,0xa2,0xbf,0x31,0xe1,0x50,0x06,0x07,0xd2,0x5a,0x4d,0x91,0x6d,0x2f,
    0xb2,0x7a,0xdc,0x19,0xbd,0x5b,0xc2,0x50,0xac,0xf6,0x68,0x6a,0x0f,0xb9,
    0xac,0x2e,0x19,0x8d,0xf2,0x7b,0x66,0xd3,0xdc,0x0a,0x36,0x04,0x7a,0x6f,
    0x56,0x08,0x6b,0x6e,0x77,0xa6,0xfa,0xf6,0x1a,0x51,0xa0,0xce,0x69,0xd3,
    0x80,0x66,0x53,0x27,0xad,0xb9,0xd7,0x80,0xb5,0xde,0xd9,0x17,0xe2,0x3e,
    0xa2,0x29,0x92,0x9a,0x07,0x0f,0xad,0xb5,0x13,0x41,0x1a,0x31,0x33,0xc2,
    0xe3,0x96,0x9a,0x0e,0xe0,0xb1,0x89,0xfa,0xf0,0x14,0xb5,0x43,0xb5,0x77,
    0xb2,0x94,0xe3,0x11,0x13,0x34,0x28,0x4b,0xfb,0xd2,0x30,0xe2,0xd2,0xa3,
    0xfc,0x57,0x6d,0x1e,0xb6,0xdd,0x63,0x57,0xbc,0x95,0xb6,0xea,0x51,0xad,
    0x93,0x5a,0xd2,0xb9,0xce,0xbf,0x44,0x1a,0x7b,0x0a,0x2c,0x66,0x21,0x78,
    0xed,0x15,0x90,0x01,0x0a,0x7b,0xf7,0xf6,0xdc,0x86,0x56,0x33,0x57,0x05,
    0xe5,0xb4,0xe7,0xd9,0x46,0xdf,0x82,0x40,0x59,0xcd,0x36,0xcf,0xa3,0x4e,
    0x09,0x5b,0x32,0xed,0x21,0xb5,0xa3,0xb9,0xd0,0x82,0x2b,0x86,0xf7,0x2a,
    0xd3,0x5c,0x69,0x7b,0x55,0xcc,0x47,0xb3,0x76,0x74,0xc4,0x9d,0x11,0xa8,
    0x69,0xc4,0x0e,0xc9,0x9e,0xd8,0x13,0x6b,0x3e,0xad,0x98,0xc7,0xde,0x7b,
    0x61,0xc8,0xdd,0xfb,0xad,0x45,0xb2,0xfd,0x50,0x20,0x32,0x5d,0xe7,0xa2,
    0x1d,0x4a,0x43,0x85,0xc5,0x59,0x42,0x23,0x56,0xcb,0x29,0xca,0x9c,0xc3,
    0xb1,0xf0,0x67,0x48,0x15,0x5d,0xe1,0x0e,0x6d,0x75,0xd5,0x33,0x0b,0x13,
    0xad,0xb5,0x3e,0xaf,0xd7,0x38,0x1b,0x23,0xf6,0x42,0xa7,0x4d,0xec,0xf3,
    0xb9,0x7d,0x3d,0x84,0xe7,0xef,0x7f,0xfd,0xfd,0xe0,0x9f,0x60,0xde,0xdf,
    0x22,0xfc,0xce,0xf7,0x0b,0xdd,0xae,0x40,0x65
};

static const QRgb image_0_ctable[] = {
    0xff000000,0xff495808,0xff2a3304,0xff242b04,0xff030401,0xff9ec011,0xff93b310,0xff748e0c,0xffa2c511,0xff8ba90e,0xff99ba10,0xff060701,0xff181d02,0xff212804,
    0xff61770a,0xff0b0d01,0xffb2c0dc
};

static struct EmbedImage {
    int width, height, depth;
    const unsigned char *data;
    ulong compressed;
    int numColors;
    const QRgb *colorTable;
    bool alpha;
    const char *name;
} embed_image_vec[] = {
    { 50, 50, 8, (const unsigned char*)image_0_data, 541, 17, image_0_ctable, FALSE, "appicon.png" },
    { 0, 0, 0, 0, 0, 0, 0, 0, 0 }
};

static QImage uic_findImage( const QString& name )
{
    for ( int i=0; embed_image_vec[i].data; i++ ) {
	if ( QString::fromUtf8(embed_image_vec[i].name) == name ) {
	    QByteArray baunzip;
	    baunzip = qUncompress( embed_image_vec[i].data, 
		embed_image_vec[i].compressed );
	    QImage img((uchar*)baunzip.data(),
			embed_image_vec[i].width,
			embed_image_vec[i].height,
			embed_image_vec[i].depth,
			(QRgb*)embed_image_vec[i].colorTable,
			embed_image_vec[i].numColors,
			QImage::BigEndian
		);
	    img = img.copy();
	    if ( embed_image_vec[i].alpha )
		img.setAlphaBuffer(TRUE);
	    return img;
        }
    }
    return QImage();
}

class MimeSourceFactory_qtconfig : public QMimeSourceFactory
{
public:
    MimeSourceFactory_qtconfig() {}
    ~MimeSourceFactory_qtconfig() {}
    const QMimeSource* data( const QString& abs_name ) const {
	const QMimeSource* d = QMimeSourceFactory::data( abs_name );
	if ( d || abs_name.isNull() ) return d;
	QImage img = uic_findImage( abs_name );
	if ( !img.isNull() )
	    ((QMimeSourceFactory*)this)->setImage( abs_name, img );
	return QMimeSourceFactory::data( abs_name );
    };
};

static QMimeSourceFactory* factory = 0;

void qInitImages_qtconfig()
{
    if ( !factory ) {
	factory = new MimeSourceFactory_qtconfig;
	QMimeSourceFactory::defaultFactory()->addFactory( factory );
    }
}

void qCleanupImages_qtconfig()
{
    if ( factory ) {
	QMimeSourceFactory::defaultFactory()->removeFactory( factory );
	delete factory;
	factory = 0;
    }
}

class StaticInitImages_qtconfig
{
public:
    StaticInitImages_qtconfig() { qInitImages_qtconfig(); }
#if defined(Q_OS_SCO) || defined(Q_OS_UNIXWARE)
    ~StaticInitImages_qtconfig() { }
#else
    ~StaticInitImages_qtconfig() { qCleanupImages_qtconfig(); }
#endif
};

static StaticInitImages_qtconfig staticImages;
