| 1 |
cpp_quote("/**") |
| 2 |
cpp_quote(" * This file is part of the mingw-w64 runtime package.") |
| 3 |
cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") |
| 4 |
cpp_quote(" */") |
| 5 |
|
| 6 |
import "oaidl.idl"; |
| 7 |
import "ocidl.idl"; |
| 8 |
|
| 9 |
cpp_quote("#include <winapifamily.h>") |
| 10 |
cpp_quote("") |
| 11 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 12 |
cpp_quote("#ifndef WINCOMMCTRLAPI") |
| 13 |
cpp_quote("#ifndef _COMCTL32_") |
| 14 |
cpp_quote("#define WINCOMMCTRLAPI DECLSPEC_IMPORT") |
| 15 |
cpp_quote("#else") |
| 16 |
cpp_quote("#define WINCOMMCTRLAPI") |
| 17 |
cpp_quote("#endif") |
| 18 |
cpp_quote("#endif") |
| 19 |
cpp_quote("") |
| 20 |
cpp_quote("#ifdef __WIDL__") |
| 21 |
|
| 22 |
typedef DWORD RGBQUAD; |
| 23 |
typedef IUnknown *HIMAGELIST; |
| 24 |
cpp_quote("typedef struct _IMAGELIST *HIMAGELIST;") |
| 25 |
|
| 26 |
typedef struct _IMAGELISTDRAWPARAMS { |
| 27 |
DWORD cbSize; |
| 28 |
HIMAGELIST himl; |
| 29 |
int i; |
| 30 |
HDC hdcDst; |
| 31 |
int x; |
| 32 |
int y; |
| 33 |
int cx; |
| 34 |
int cy; |
| 35 |
int xBitmap; |
| 36 |
int yBitmap; |
| 37 |
COLORREF rgbBk; |
| 38 |
COLORREF rgbFg; |
| 39 |
UINT fStyle; |
| 40 |
DWORD dwRop; |
| 41 |
DWORD fState; |
| 42 |
DWORD Frame; |
| 43 |
COLORREF crEffect; |
| 44 |
} IMAGELISTDRAWPARAMS; |
| 45 |
|
| 46 |
typedef IMAGELISTDRAWPARAMS *LPIMAGELISTDRAWPARAMS; |
| 47 |
|
| 48 |
typedef struct tagIMAGEINFO { |
| 49 |
HBITMAP hbmImage; |
| 50 |
HBITMAP hbmMask; |
| 51 |
int Unused1; |
| 52 |
int Unused2; |
| 53 |
RECT rcImage; |
| 54 |
} IMAGEINFO; |
| 55 |
|
| 56 |
typedef IMAGEINFO *LPIMAGEINFO; |
| 57 |
cpp_quote("#endif") |
| 58 |
cpp_quote("") |
| 59 |
cpp_quote("#define ILIF_ALPHA 0x1") |
| 60 |
cpp_quote("#define ILIF_LOWQUALITY 0x2") |
| 61 |
cpp_quote("") |
| 62 |
cpp_quote("#define ILDRF_IMAGELOWQUALITY 0x1") |
| 63 |
cpp_quote("#define ILDRF_OVERLAYLOWQUALITY 0x10") |
| 64 |
cpp_quote("") |
| 65 |
cpp_quote("#define ILR_DEFAULT 0x0") |
| 66 |
cpp_quote("#define ILR_HORIZONTAL_LEFT 0x0") |
| 67 |
cpp_quote("#define ILR_HORIZONTAL_CENTER 0x1") |
| 68 |
cpp_quote("#define ILR_HORIZONTAL_RIGHT 0x2") |
| 69 |
cpp_quote("#define ILR_VERTICAL_TOP 0x0") |
| 70 |
cpp_quote("#define ILR_VERTICAL_CENTER 0x10") |
| 71 |
cpp_quote("#define ILR_VERTICAL_BOTTOM 0x20") |
| 72 |
cpp_quote("#define ILR_SCALE_CLIP 0x0") |
| 73 |
cpp_quote("#define ILR_SCALE_ASPECTRATIO 0x100") |
| 74 |
cpp_quote("") |
| 75 |
cpp_quote("#define ILGOS_ALWAYS 0x0") |
| 76 |
cpp_quote("#define ILGOS_FROMSTANDBY 0x1") |
| 77 |
cpp_quote("") |
| 78 |
cpp_quote("#define ILFIP_ALWAYS 0x0") |
| 79 |
cpp_quote("#define ILFIP_FROMSTANDBY 0x1") |
| 80 |
cpp_quote("") |
| 81 |
cpp_quote("#define ILDI_PURGE 0x1") |
| 82 |
cpp_quote("#define ILDI_STANDBY 0x2") |
| 83 |
cpp_quote("#define ILDI_RESETACCESS 0x4") |
| 84 |
cpp_quote("#define ILDI_QUERYACCESS 0x8") |
| 85 |
|
| 86 |
cpp_quote("") |
| 87 |
cpp_quote("#if NTDDI_VERSION >= 0x06000000") |
| 88 |
cpp_quote("WINCOMMCTRLAPI HRESULT WINAPI ImageList_CoCreateInstance (REFCLSID rclsid, const IUnknown *punkOuter, REFIID riid, void **ppv);") |
| 89 |
cpp_quote("#endif") |
| 90 |
|
| 91 |
typedef struct tagIMAGELISTSTATS { |
| 92 |
DWORD cbSize; |
| 93 |
int cAlloc; |
| 94 |
int cUsed; |
| 95 |
int cStandby; |
| 96 |
} IMAGELISTSTATS; |
| 97 |
|
| 98 |
[local, uuid (46eb5926-582e-4017-9fdf-E8998DAA0950)] |
| 99 |
interface IImageList : IUnknown { |
| 100 |
HRESULT Add ([in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask,[out] int *pi); |
| 101 |
HRESULT ReplaceIcon (int i,[in] HICON hicon,[out] int *pi); |
| 102 |
HRESULT SetOverlayImage (int iImage, int iOverlay); |
| 103 |
HRESULT Replace (int i,[in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask); |
| 104 |
HRESULT AddMasked ([in] HBITMAP hbmImage, COLORREF crMask,[out] int *pi); |
| 105 |
HRESULT Draw ([in] IMAGELISTDRAWPARAMS *pimldp); |
| 106 |
HRESULT Remove (int i); |
| 107 |
HRESULT GetIcon (int i, UINT flags,[out] HICON *picon); |
| 108 |
HRESULT GetImageInfo (int i,[out] IMAGEINFO *pImageInfo); |
| 109 |
HRESULT Copy (int iDst,[in] IUnknown *punkSrc, int iSrc, UINT uFlags); |
| 110 |
HRESULT Merge (int i1,[in] IUnknown *punk2, int i2, int dx, int dy, REFIID riid,[out, iid_is (riid)] void **ppv); |
| 111 |
HRESULT Clone (REFIID riid,[out, iid_is (riid)] void **ppv); |
| 112 |
HRESULT GetImageRect (int i,[out] RECT *prc); |
| 113 |
HRESULT GetIconSize ([out] int *cx,[out] int *cy); |
| 114 |
HRESULT SetIconSize (int cx, int cy); |
| 115 |
HRESULT GetImageCount ([out] int *pi); |
| 116 |
HRESULT SetImageCount (UINT uNewCount); |
| 117 |
HRESULT SetBkColor (COLORREF clrBk,[out] COLORREF *pclr); |
| 118 |
HRESULT GetBkColor ([out] COLORREF *pclr); |
| 119 |
HRESULT BeginDrag (int iTrack, int dxHotspot, int dyHotspot); |
| 120 |
HRESULT EndDrag (); |
| 121 |
HRESULT DragEnter ([in, unique] HWND hwndLock, int x, int y); |
| 122 |
HRESULT DragLeave ([in, unique] HWND hwndLock); |
| 123 |
HRESULT DragMove (int x, int y); |
| 124 |
HRESULT SetDragCursorImage ([in] IUnknown *punk, int iDrag, int dxHotspot, int dyHotspot); |
| 125 |
HRESULT DragShowNolock (WINBOOL fShow); |
| 126 |
HRESULT GetDragImage ([out] POINT *ppt,[out] POINT *pptHotspot, REFIID riid,[out, iid_is (riid)] void **ppv); |
| 127 |
HRESULT GetItemFlags (int i,[out] DWORD *dwFlags); |
| 128 |
HRESULT GetOverlayImage (int iOverlay,[out] int *piIndex); |
| 129 |
}; |
| 130 |
|
| 131 |
[local, uuid (192b9d83-50fc-457b-90a0-2b82a8b5dae1)] |
| 132 |
interface IImageList2 : IImageList { |
| 133 |
HRESULT Resize (int cxNewIconSize, int cyNewIconSize); |
| 134 |
HRESULT GetOriginalSize ([in] int iImage,[in] DWORD dwFlags,[out] int *pcx,[out] int *pcy); |
| 135 |
HRESULT SetOriginalSize ([in] int iImage,[in] int cx,[in] int cy); |
| 136 |
HRESULT SetCallback ([in, unique] IUnknown *punk); |
| 137 |
HRESULT GetCallback ([in] REFIID riid,[out, iid_is (riid)] void **ppv); |
| 138 |
HRESULT ForceImagePresent ([in] int iImage, DWORD dwFlags); |
| 139 |
HRESULT DiscardImages ([in] int iFirstImage,[in] int iLastImage,[in] DWORD dwFlags); |
| 140 |
HRESULT PreloadImages ([in] IMAGELISTDRAWPARAMS *pimldp); |
| 141 |
HRESULT GetStatistics ([in, out] IMAGELISTSTATS *pils); |
| 142 |
HRESULT Initialize ([in] int cx,[in] int cy,[in] UINT flags,[in] int cInitial,[in] int cGrow); |
| 143 |
HRESULT Replace2 ([in] int i,[in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask,[in, unique] IUnknown *punk,[in] DWORD dwFlags); |
| 144 |
HRESULT ReplaceFromImageList ([in] int i,[in] IImageList *pil,[in] int iSrc,[in, unique] IUnknown *punk,[in] DWORD dwFlags); |
| 145 |
}; |
| 146 |
|
| 147 |
[uuid (BCADA15B-B428-420c-8d28-023590924c9f)] |
| 148 |
library CommonControlObjects { |
| 149 |
[uuid (7c476ba2-02b1-48f4-8048-B24619DDC058)] |
| 150 |
coclass ImageList { |
| 151 |
interface IImageList; |
| 152 |
interface IImageList2; |
| 153 |
} |
| 154 |
}; |
| 155 |
cpp_quote("#endif") |