00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 #ifndef ICON_H
00015 #define ICON_H
00016 
00017 #include "il_internal.h"
00018 
00019 #ifdef _WIN32
00020         #pragma pack(push, ico_struct, 1)
00021 #endif
00022 typedef struct ICODIR
00023 {
00024         ILshort         Reserved;       
00025         ILshort         Type;           
00026         ILshort         Count;          
00027 } IL_PACKSTRUCT ICODIR;
00028 
00029 typedef struct ICODIRENTRY
00030 {
00031         ILubyte         Width;                  
00032         ILubyte         Height;                 
00033         ILubyte         NumColours;             
00034         ILubyte         Reserved;               
00035         ILshort         Planes;                 
00036         ILshort         Bpp;                    
00037         ILuint          SizeOfData;             
00038         ILuint          Offset;                 
00039 } IL_PACKSTRUCT ICODIRENTRY;
00040 
00041 typedef struct INFOHEAD
00042 {
00043         ILint           Size;
00044         ILint           Width;
00045         ILint           Height;
00046         ILshort         Planes;
00047         ILshort         BitCount;
00048         ILint           Compression;
00049         ILint           SizeImage;
00050         ILint           XPixPerMeter;
00051         ILint           YPixPerMeter;
00052         ILint           ColourUsed;
00053         ILint           ColourImportant;
00054 } IL_PACKSTRUCT INFOHEAD;
00055 
00056 typedef struct ICOIMAGE
00057 {
00058         INFOHEAD        Head;
00059         ILubyte         *Pal;   
00060         ILubyte         *Data;  
00061         ILubyte         *AND;   
00062 } ICOIMAGE;
00063 #ifdef _WIN32
00064         #pragma pack(pop, ico_struct)
00065 #endif
00066 
00067 ILboolean iLoadIconInternal();
00068 ILboolean iLoadIconPNG(ICOIMAGE *Icon);
00069 
00070 #endif//ICON_H