| cpp_quote("/**") |
| cpp_quote(" * This file is part of the mingw-w64 runtime package.") |
| cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") |
| cpp_quote(" */") |
| |
| import "oaidl.idl"; |
| import "ocidl.idl"; |
| |
| cpp_quote("#include <winapifamily.h>") |
| cpp_quote("") |
| cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| cpp_quote("#ifndef WINCOMMCTRLAPI") |
| cpp_quote("#ifndef _COMCTL32_") |
| cpp_quote("#define WINCOMMCTRLAPI DECLSPEC_IMPORT") |
| cpp_quote("#else") |
| cpp_quote("#define WINCOMMCTRLAPI") |
| cpp_quote("#endif") |
| cpp_quote("#endif") |
| cpp_quote("") |
| cpp_quote("#ifdef __WIDL__") |
| |
| typedef DWORD RGBQUAD; |
| typedef IUnknown *HIMAGELIST; |
| cpp_quote("typedef struct _IMAGELIST *HIMAGELIST;") |
| |
| typedef struct _IMAGELISTDRAWPARAMS { |
| DWORD cbSize; |
| HIMAGELIST himl; |
| int i; |
| HDC hdcDst; |
| int x; |
| int y; |
| int cx; |
| int cy; |
| int xBitmap; |
| int yBitmap; |
| COLORREF rgbBk; |
| COLORREF rgbFg; |
| UINT fStyle; |
| DWORD dwRop; |
| DWORD fState; |
| DWORD Frame; |
| COLORREF crEffect; |
| } IMAGELISTDRAWPARAMS; |
| |
| typedef IMAGELISTDRAWPARAMS *LPIMAGELISTDRAWPARAMS; |
| |
| typedef struct tagIMAGEINFO { |
| HBITMAP hbmImage; |
| HBITMAP hbmMask; |
| int Unused1; |
| int Unused2; |
| RECT rcImage; |
| } IMAGEINFO; |
| |
| typedef IMAGEINFO *LPIMAGEINFO; |
| cpp_quote("#endif") |
| cpp_quote("") |
| cpp_quote("#define ILIF_ALPHA 0x1") |
| cpp_quote("#define ILIF_LOWQUALITY 0x2") |
| cpp_quote("") |
| cpp_quote("#define ILDRF_IMAGELOWQUALITY 0x1") |
| cpp_quote("#define ILDRF_OVERLAYLOWQUALITY 0x10") |
| cpp_quote("") |
| cpp_quote("#define ILR_DEFAULT 0x0") |
| cpp_quote("#define ILR_HORIZONTAL_LEFT 0x0") |
| cpp_quote("#define ILR_HORIZONTAL_CENTER 0x1") |
| cpp_quote("#define ILR_HORIZONTAL_RIGHT 0x2") |
| cpp_quote("#define ILR_VERTICAL_TOP 0x0") |
| cpp_quote("#define ILR_VERTICAL_CENTER 0x10") |
| cpp_quote("#define ILR_VERTICAL_BOTTOM 0x20") |
| cpp_quote("#define ILR_SCALE_CLIP 0x0") |
| cpp_quote("#define ILR_SCALE_ASPECTRATIO 0x100") |
| cpp_quote("") |
| cpp_quote("#define ILGOS_ALWAYS 0x0") |
| cpp_quote("#define ILGOS_FROMSTANDBY 0x1") |
| cpp_quote("") |
| cpp_quote("#define ILFIP_ALWAYS 0x0") |
| cpp_quote("#define ILFIP_FROMSTANDBY 0x1") |
| cpp_quote("") |
| cpp_quote("#define ILDI_PURGE 0x1") |
| cpp_quote("#define ILDI_STANDBY 0x2") |
| cpp_quote("#define ILDI_RESETACCESS 0x4") |
| cpp_quote("#define ILDI_QUERYACCESS 0x8") |
| |
| cpp_quote("") |
| cpp_quote("#if NTDDI_VERSION >= 0x06000000") |
| cpp_quote("WINCOMMCTRLAPI HRESULT WINAPI ImageList_CoCreateInstance (REFCLSID rclsid, const IUnknown *punkOuter, REFIID riid, void **ppv);") |
| cpp_quote("#endif") |
| |
| typedef struct tagIMAGELISTSTATS { |
| DWORD cbSize; |
| int cAlloc; |
| int cUsed; |
| int cStandby; |
| } IMAGELISTSTATS; |
| |
| [local, uuid (46eb5926-582e-4017-9fdf-E8998DAA0950)] |
| interface IImageList : IUnknown { |
| HRESULT Add ([in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask,[out] int *pi); |
| HRESULT ReplaceIcon (int i,[in] HICON hicon,[out] int *pi); |
| HRESULT SetOverlayImage (int iImage, int iOverlay); |
| HRESULT Replace (int i,[in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask); |
| HRESULT AddMasked ([in] HBITMAP hbmImage, COLORREF crMask,[out] int *pi); |
| HRESULT Draw ([in] IMAGELISTDRAWPARAMS *pimldp); |
| HRESULT Remove (int i); |
| HRESULT GetIcon (int i, UINT flags,[out] HICON *picon); |
| HRESULT GetImageInfo (int i,[out] IMAGEINFO *pImageInfo); |
| HRESULT Copy (int iDst,[in] IUnknown *punkSrc, int iSrc, UINT uFlags); |
| HRESULT Merge (int i1,[in] IUnknown *punk2, int i2, int dx, int dy, REFIID riid,[out, iid_is (riid)] void **ppv); |
| HRESULT Clone (REFIID riid,[out, iid_is (riid)] void **ppv); |
| HRESULT GetImageRect (int i,[out] RECT *prc); |
| HRESULT GetIconSize ([out] int *cx,[out] int *cy); |
| HRESULT SetIconSize (int cx, int cy); |
| HRESULT GetImageCount ([out] int *pi); |
| HRESULT SetImageCount (UINT uNewCount); |
| HRESULT SetBkColor (COLORREF clrBk,[out] COLORREF *pclr); |
| HRESULT GetBkColor ([out] COLORREF *pclr); |
| HRESULT BeginDrag (int iTrack, int dxHotspot, int dyHotspot); |
| HRESULT EndDrag (); |
| HRESULT DragEnter ([in, unique] HWND hwndLock, int x, int y); |
| HRESULT DragLeave ([in, unique] HWND hwndLock); |
| HRESULT DragMove (int x, int y); |
| HRESULT SetDragCursorImage ([in] IUnknown *punk, int iDrag, int dxHotspot, int dyHotspot); |
| HRESULT DragShowNolock (WINBOOL fShow); |
| HRESULT GetDragImage ([out] POINT *ppt,[out] POINT *pptHotspot, REFIID riid,[out, iid_is (riid)] void **ppv); |
| HRESULT GetItemFlags (int i,[out] DWORD *dwFlags); |
| HRESULT GetOverlayImage (int iOverlay,[out] int *piIndex); |
| }; |
| |
| [local, uuid (192b9d83-50fc-457b-90a0-2b82a8b5dae1)] |
| interface IImageList2 : IImageList { |
| HRESULT Resize (int cxNewIconSize, int cyNewIconSize); |
| HRESULT GetOriginalSize ([in] int iImage,[in] DWORD dwFlags,[out] int *pcx,[out] int *pcy); |
| HRESULT SetOriginalSize ([in] int iImage,[in] int cx,[in] int cy); |
| HRESULT SetCallback ([in, unique] IUnknown *punk); |
| HRESULT GetCallback ([in] REFIID riid,[out, iid_is (riid)] void **ppv); |
| HRESULT ForceImagePresent ([in] int iImage, DWORD dwFlags); |
| HRESULT DiscardImages ([in] int iFirstImage,[in] int iLastImage,[in] DWORD dwFlags); |
| HRESULT PreloadImages ([in] IMAGELISTDRAWPARAMS *pimldp); |
| HRESULT GetStatistics ([in, out] IMAGELISTSTATS *pils); |
| HRESULT Initialize ([in] int cx,[in] int cy,[in] UINT flags,[in] int cInitial,[in] int cGrow); |
| HRESULT Replace2 ([in] int i,[in] HBITMAP hbmImage,[in, unique] HBITMAP hbmMask,[in, unique] IUnknown *punk,[in] DWORD dwFlags); |
| HRESULT ReplaceFromImageList ([in] int i,[in] IImageList *pil,[in] int iSrc,[in, unique] IUnknown *punk,[in] DWORD dwFlags); |
| }; |
| |
| [uuid (BCADA15B-B428-420c-8d28-023590924c9f)] |
| library CommonControlObjects { |
| [uuid (7c476ba2-02b1-48f4-8048-B24619DDC058)] |
| coclass ImageList { |
| interface IImageList; |
| interface IImageList2; |
| } |
| }; |
| cpp_quote("#endif") |