Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

icon.h

Go to the documentation of this file.
00001 /* $Id: icon.h,v 1.7 2000/01/18 20:08:10 sandervl Exp $ */
00002 
00003 /*
00004  *
00005  * Project Odin Software License can be found in LICENSE.TXT
00006  *
00007  */
00008 /*
00009  * Win32 icon conversion functions for OS/2
00010  *
00011  * Copyright 1998 Sander van Leeuwen
00012  *
00013  */
00014 #ifndef __ICON_H__
00015 #define __ICON_H__
00016 
00017 extern "C" PBYTE ConvertWin32Icon(PBYTE presbits, DWORD dwResSize, DWORD *OS2ResSize);
00018 extern "C" void  FreeIcon(void *os2icon);
00019 
00020 
00021 #ifdef _ICON_C_
00022 
00023 #pragma pack(1)
00024 
00025 typedef struct {
00026   WORD   wReserved;          // Currently zero
00027   WORD   wType;              // 1 for icons
00028   WORD   wCount;             // Number of components
00029 //Fout in docs, geen padding
00030 //  WORD   padding;            // filler for DWORD alignment
00031 } IconHeader;
00032 
00033 typedef struct tagWINBITMAPINFOHEADER{
00034         DWORD      biSize;
00035         LONG       biWidth;
00036         LONG       biHeight;
00037         WORD       biPlanes;
00038         WORD       biBitCount;
00039         DWORD      biCompression;
00040         DWORD      biSizeImage;
00041         LONG       biXPelsPerMeter;
00042         LONG       biYPelsPerMeter;
00043         DWORD      biClrUsed;
00044         DWORD      biClrImportant;
00045 } WINBITMAPINFOHEADER;
00046 
00047 typedef struct
00048 {
00049    BYTE                      blue;
00050    BYTE                      green;
00051    BYTE                      red;
00052    BYTE                      res;
00053 }  RGBQUAD;
00054 
00055 //The next portion is repeated for each component resource:
00056 typedef struct {
00057   BYTE   bWidth;
00058   BYTE   bHeight;
00059   BYTE   bColorCount;
00060   BYTE   bReserved;
00061   WORD   wPlanes;
00062   WORD   wBitCount;
00063   DWORD  lBytesInRes;
00064   WORD   wNameOrdinal;       // Points to component
00065 //Fout in docs, geen padding
00066 //  WORD   padding;            // filler for DWORD alignment
00067 } ResourceDirectory;
00068 
00069 #pragma pack()
00070 
00071 #endif
00072 
00073 #endif

Generated on Wed Jan 23 23:17:32 2002 for ODIN-user32 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001