Sync to trunk (r44371)
[reactos.git] / reactos / dll / win32 / comctl32 / imagelist.h
1 /*
2 * ImageList definitions
3 *
4 * Copyright 1998 Eric Kohl
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21 #ifndef __WINE_IMAGELIST_H
22 #define __WINE_IMAGELIST_H
23
24 #include <stdarg.h>
25
26 #include "windef.h"
27 #include "winbase.h"
28 #include "wingdi.h"
29
30 /* the ones with offsets at the end are the same as in Windows */
31 struct _IMAGELIST
32 {
33 DWORD magic; /* 00: 'SAMX' */
34 INT cCurImage; /* 04: ImageCount */
35 INT cMaxImage; /* 08: maximages */
36 INT cGrow; /* 0c: cGrow */
37 INT cx; /* 10: cx */
38 INT cy; /* 14: cy */
39 DWORD x4;
40 UINT flags; /* 1c: flags */
41 COLORREF clrFg; /* 20: foreground color */
42 COLORREF clrBk; /* 24: background color */
43
44
45 HBITMAP hbmImage; /* 30: images Bitmap */
46 HBITMAP hbmMask; /* 34: masks Bitmap */
47 HDC hdcImage; /* 38: images MemDC */
48 HDC hdcMask; /* 3C: masks MemDC */
49 INT nOvlIdx[15]; /* 40: overlay images index */
50
51 /* not yet found out */
52 HBRUSH hbrBlend25;
53 HBRUSH hbrBlend50;
54 INT cInitial;
55 UINT uBitsPixel;
56 };
57
58 #define IMAGELIST_MAGIC 0x53414D58
59
60 /* Header used by ImageList_Read() and ImageList_Write() */
61 #include "pshpack2.h"
62 typedef struct _ILHEAD
63 {
64 USHORT usMagic;
65 USHORT usVersion;
66 WORD cCurImage;
67 WORD cMaxImage;
68 WORD cGrow;
69 WORD cx;
70 WORD cy;
71 COLORREF bkcolor;
72 WORD flags;
73 SHORT ovls[4];
74 } ILHEAD;
75 #include "poppack.h"
76
77 #endif /* __WINE_IMAGELIST_H */