1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef __REQUIRED_RPCNDR_H_VERSION__
7#define __REQUIRED_RPCNDR_H_VERSION__ 475
8#endif
9
10#include "rpc.h"
11#include "rpcndr.h"
12
13#ifndef __RPCNDR_H_VERSION__
14#error this stub requires an updated version of <rpcndr.h>
15#endif
16
17#ifndef COM_NO_WINDOWS_H
18#include "windows.h"
19#include "ole2.h"
20#endif
21
22#ifndef __commoncontrols_h__
23#define __commoncontrols_h__
24
25#ifndef __IImageList_FWD_DEFINED__
26#define __IImageList_FWD_DEFINED__
27typedef struct IImageList IImageList;
28#endif
29
30#ifndef __ImageList_FWD_DEFINED__
31#define __ImageList_FWD_DEFINED__
32#ifdef __cplusplus
33typedef class ImageList ImageList;
34#else
35typedef struct ImageList ImageList;
36#endif
37#endif
38
39#include "oaidl.h"
40#include "ocidl.h"
41
42#ifdef __cplusplus
43extern "C"{
44#endif
45
46#ifndef __MIDL_user_allocate_free_DEFINED__
47#define __MIDL_user_allocate_free_DEFINED__
48  void *__RPC_API MIDL_user_allocate(size_t);
49  void __RPC_API MIDL_user_free(void *);
50#endif
51
52#define ILIF_ALPHA 0x00000001
53
54  extern RPC_IF_HANDLE __MIDL_itf_commoncontrols_0000_v0_0_c_ifspec;
55  extern RPC_IF_HANDLE __MIDL_itf_commoncontrols_0000_v0_0_s_ifspec;
56
57#ifndef __IImageList_INTERFACE_DEFINED__
58#define __IImageList_INTERFACE_DEFINED__
59  EXTERN_C const IID IID_IImageList;
60#if defined(__cplusplus) && !defined(CINTERFACE)
61  struct IImageList : public IUnknown {
62  public:
63    virtual HRESULT WINAPI Add(HBITMAP hbmImage,HBITMAP hbmMask,int *pi) = 0;
64    virtual HRESULT WINAPI ReplaceIcon(int i,HICON hicon,int *pi) = 0;
65    virtual HRESULT WINAPI SetOverlayImage(int iImage,int iOverlay) = 0;
66    virtual HRESULT WINAPI Replace(int i,HBITMAP hbmImage,HBITMAP hbmMask) = 0;
67    virtual HRESULT WINAPI AddMasked(HBITMAP hbmImage,COLORREF crMask,int *pi) = 0;
68    virtual HRESULT WINAPI Draw(IMAGELISTDRAWPARAMS *pimldp) = 0;
69    virtual HRESULT WINAPI Remove(int i) = 0;
70    virtual HRESULT WINAPI GetIcon(int i,UINT flags,HICON *picon) = 0;
71    virtual HRESULT WINAPI GetImageInfo(int i,IMAGEINFO *pImageInfo) = 0;
72    virtual HRESULT WINAPI Copy(int iDst,IUnknown *punkSrc,int iSrc,UINT uFlags) = 0;
73    virtual HRESULT WINAPI Merge(int i1,IUnknown *punk2,int i2,int dx,int dy,REFIID riid,PVOID *ppv) = 0;
74    virtual HRESULT WINAPI Clone(REFIID riid,PVOID *ppv) = 0;
75    virtual HRESULT WINAPI GetImageRect(int i,RECT *prc) = 0;
76    virtual HRESULT WINAPI GetIconSize(int *cx,int *cy) = 0;
77    virtual HRESULT WINAPI SetIconSize(int cx,int cy) = 0;
78    virtual HRESULT WINAPI GetImageCount(int *pi) = 0;
79    virtual HRESULT WINAPI SetImageCount(UINT uNewCount) = 0;
80    virtual HRESULT WINAPI SetBkColor(COLORREF clrBk,COLORREF *pclr) = 0;
81    virtual HRESULT WINAPI GetBkColor(COLORREF *pclr) = 0;
82    virtual HRESULT WINAPI BeginDrag(int iTrack,int dxHotspot,int dyHotspot) = 0;
83    virtual HRESULT WINAPI EndDrag(void) = 0;
84    virtual HRESULT WINAPI DragEnter(HWND hwndLock,int x,int y) = 0;
85    virtual HRESULT WINAPI DragLeave(HWND hwndLock) = 0;
86    virtual HRESULT WINAPI DragMove(int x,int y) = 0;
87    virtual HRESULT WINAPI SetDragCursorImage(IUnknown *punk,int iDrag,int dxHotspot,int dyHotspot) = 0;
88    virtual HRESULT WINAPI DragShowNolock(WINBOOL fShow) = 0;
89    virtual HRESULT WINAPI GetDragImage(POINT *ppt,POINT *pptHotspot,REFIID riid,PVOID *ppv) = 0;
90    virtual HRESULT WINAPI GetItemFlags(int i,DWORD *dwFlags) = 0;
91    virtual HRESULT WINAPI GetOverlayImage(int iOverlay,int *piIndex) = 0;
92  };
93#else
94  typedef struct IImageListVtbl {
95    BEGIN_INTERFACE
96      HRESULT (WINAPI *QueryInterface)(IImageList *This,REFIID riid,void **ppvObject);
97      ULONG (WINAPI *AddRef)(IImageList *This);
98      ULONG (WINAPI *Release)(IImageList *This);
99      HRESULT (WINAPI *Add)(IImageList *This,HBITMAP hbmImage,HBITMAP hbmMask,int *pi);
100      HRESULT (WINAPI *ReplaceIcon)(IImageList *This,int i,HICON hicon,int *pi);
101      HRESULT (WINAPI *SetOverlayImage)(IImageList *This,int iImage,int iOverlay);
102      HRESULT (WINAPI *Replace)(IImageList *This,int i,HBITMAP hbmImage,HBITMAP hbmMask);
103      HRESULT (WINAPI *AddMasked)(IImageList *This,HBITMAP hbmImage,COLORREF crMask,int *pi);
104      HRESULT (WINAPI *Draw)(IImageList *This,IMAGELISTDRAWPARAMS *pimldp);
105      HRESULT (WINAPI *Remove)(IImageList *This,int i);
106      HRESULT (WINAPI *GetIcon)(IImageList *This,int i,UINT flags,HICON *picon);
107      HRESULT (WINAPI *GetImageInfo)(IImageList *This,int i,IMAGEINFO *pImageInfo);
108      HRESULT (WINAPI *Copy)(IImageList *This,int iDst,IUnknown *punkSrc,int iSrc,UINT uFlags);
109      HRESULT (WINAPI *Merge)(IImageList *This,int i1,IUnknown *punk2,int i2,int dx,int dy,REFIID riid,PVOID *ppv);
110      HRESULT (WINAPI *Clone)(IImageList *This,REFIID riid,PVOID *ppv);
111      HRESULT (WINAPI *GetImageRect)(IImageList *This,int i,RECT *prc);
112      HRESULT (WINAPI *GetIconSize)(IImageList *This,int *cx,int *cy);
113      HRESULT (WINAPI *SetIconSize)(IImageList *This,int cx,int cy);
114      HRESULT (WINAPI *GetImageCount)(IImageList *This,int *pi);
115      HRESULT (WINAPI *SetImageCount)(IImageList *This,UINT uNewCount);
116      HRESULT (WINAPI *SetBkColor)(IImageList *This,COLORREF clrBk,COLORREF *pclr);
117      HRESULT (WINAPI *GetBkColor)(IImageList *This,COLORREF *pclr);
118      HRESULT (WINAPI *BeginDrag)(IImageList *This,int iTrack,int dxHotspot,int dyHotspot);
119      HRESULT (WINAPI *EndDrag)(IImageList *This);
120      HRESULT (WINAPI *DragEnter)(IImageList *This,HWND hwndLock,int x,int y);
121      HRESULT (WINAPI *DragLeave)(IImageList *This,HWND hwndLock);
122      HRESULT (WINAPI *DragMove)(IImageList *This,int x,int y);
123      HRESULT (WINAPI *SetDragCursorImage)(IImageList *This,IUnknown *punk,int iDrag,int dxHotspot,int dyHotspot);
124      HRESULT (WINAPI *DragShowNolock)(IImageList *This,WINBOOL fShow);
125      HRESULT (WINAPI *GetDragImage)(IImageList *This,POINT *ppt,POINT *pptHotspot,REFIID riid,PVOID *ppv);
126      HRESULT (WINAPI *GetItemFlags)(IImageList *This,int i,DWORD *dwFlags);
127      HRESULT (WINAPI *GetOverlayImage)(IImageList *This,int iOverlay,int *piIndex);
128    END_INTERFACE
129  } IImageListVtbl;
130  struct IImageList {
131    CONST_VTBL struct IImageListVtbl *lpVtbl;
132  };
133#ifdef COBJMACROS
134#define IImageList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
135#define IImageList_AddRef(This) (This)->lpVtbl->AddRef(This)
136#define IImageList_Release(This) (This)->lpVtbl->Release(This)
137#define IImageList_Add(This,hbmImage,hbmMask,pi) (This)->lpVtbl->Add(This,hbmImage,hbmMask,pi)
138#define IImageList_ReplaceIcon(This,i,hicon,pi) (This)->lpVtbl->ReplaceIcon(This,i,hicon,pi)
139#define IImageList_SetOverlayImage(This,iImage,iOverlay) (This)->lpVtbl->SetOverlayImage(This,iImage,iOverlay)
140#define IImageList_Replace(This,i,hbmImage,hbmMask) (This)->lpVtbl->Replace(This,i,hbmImage,hbmMask)
141#define IImageList_AddMasked(This,hbmImage,crMask,pi) (This)->lpVtbl->AddMasked(This,hbmImage,crMask,pi)
142#define IImageList_Draw(This,pimldp) (This)->lpVtbl->Draw(This,pimldp)
143#define IImageList_Remove(This,i) (This)->lpVtbl->Remove(This,i)
144#define IImageList_GetIcon(This,i,flags,picon) (This)->lpVtbl->GetIcon(This,i,flags,picon)
145#define IImageList_GetImageInfo(This,i,pImageInfo) (This)->lpVtbl->GetImageInfo(This,i,pImageInfo)
146#define IImageList_Copy(This,iDst,punkSrc,iSrc,uFlags) (This)->lpVtbl->Copy(This,iDst,punkSrc,iSrc,uFlags)
147#define IImageList_Merge(This,i1,punk2,i2,dx,dy,riid,ppv) (This)->lpVtbl->Merge(This,i1,punk2,i2,dx,dy,riid,ppv)
148#define IImageList_Clone(This,riid,ppv) (This)->lpVtbl->Clone(This,riid,ppv)
149#define IImageList_GetImageRect(This,i,prc) (This)->lpVtbl->GetImageRect(This,i,prc)
150#define IImageList_GetIconSize(This,cx,cy) (This)->lpVtbl->GetIconSize(This,cx,cy)
151#define IImageList_SetIconSize(This,cx,cy) (This)->lpVtbl->SetIconSize(This,cx,cy)
152#define IImageList_GetImageCount(This,pi) (This)->lpVtbl->GetImageCount(This,pi)
153#define IImageList_SetImageCount(This,uNewCount) (This)->lpVtbl->SetImageCount(This,uNewCount)
154#define IImageList_SetBkColor(This,clrBk,pclr) (This)->lpVtbl->SetBkColor(This,clrBk,pclr)
155#define IImageList_GetBkColor(This,pclr) (This)->lpVtbl->GetBkColor(This,pclr)
156#define IImageList_BeginDrag(This,iTrack,dxHotspot,dyHotspot) (This)->lpVtbl->BeginDrag(This,iTrack,dxHotspot,dyHotspot)
157#define IImageList_EndDrag(This) (This)->lpVtbl->EndDrag(This)
158#define IImageList_DragEnter(This,hwndLock,x,y) (This)->lpVtbl->DragEnter(This,hwndLock,x,y)
159#define IImageList_DragLeave(This,hwndLock) (This)->lpVtbl->DragLeave(This,hwndLock)
160#define IImageList_DragMove(This,x,y) (This)->lpVtbl->DragMove(This,x,y)
161#define IImageList_SetDragCursorImage(This,punk,iDrag,dxHotspot,dyHotspot) (This)->lpVtbl->SetDragCursorImage(This,punk,iDrag,dxHotspot,dyHotspot)
162#define IImageList_DragShowNolock(This,fShow) (This)->lpVtbl->DragShowNolock(This,fShow)
163#define IImageList_GetDragImage(This,ppt,pptHotspot,riid,ppv) (This)->lpVtbl->GetDragImage(This,ppt,pptHotspot,riid,ppv)
164#define IImageList_GetItemFlags(This,i,dwFlags) (This)->lpVtbl->GetItemFlags(This,i,dwFlags)
165#define IImageList_GetOverlayImage(This,iOverlay,piIndex) (This)->lpVtbl->GetOverlayImage(This,iOverlay,piIndex)
166#endif
167#endif
168  HRESULT WINAPI IImageList_Add_Proxy(IImageList *This,HBITMAP hbmImage,HBITMAP hbmMask,int *pi);
169  void __RPC_STUB IImageList_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
170  HRESULT WINAPI IImageList_ReplaceIcon_Proxy(IImageList *This,int i,HICON hicon,int *pi);
171  void __RPC_STUB IImageList_ReplaceIcon_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
172  HRESULT WINAPI IImageList_SetOverlayImage_Proxy(IImageList *This,int iImage,int iOverlay);
173  void __RPC_STUB IImageList_SetOverlayImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
174  HRESULT WINAPI IImageList_Replace_Proxy(IImageList *This,int i,HBITMAP hbmImage,HBITMAP hbmMask);
175  void __RPC_STUB IImageList_Replace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
176  HRESULT WINAPI IImageList_AddMasked_Proxy(IImageList *This,HBITMAP hbmImage,COLORREF crMask,int *pi);
177  void __RPC_STUB IImageList_AddMasked_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
178  HRESULT WINAPI IImageList_Draw_Proxy(IImageList *This,IMAGELISTDRAWPARAMS *pimldp);
179  void __RPC_STUB IImageList_Draw_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
180  HRESULT WINAPI IImageList_Remove_Proxy(IImageList *This,int i);
181  void __RPC_STUB IImageList_Remove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
182  HRESULT WINAPI IImageList_GetIcon_Proxy(IImageList *This,int i,UINT flags,HICON *picon);
183  void __RPC_STUB IImageList_GetIcon_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
184  HRESULT WINAPI IImageList_GetImageInfo_Proxy(IImageList *This,int i,IMAGEINFO *pImageInfo);
185  void __RPC_STUB IImageList_GetImageInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
186  HRESULT WINAPI IImageList_Copy_Proxy(IImageList *This,int iDst,IUnknown *punkSrc,int iSrc,UINT uFlags);
187  void __RPC_STUB IImageList_Copy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
188  HRESULT WINAPI IImageList_Merge_Proxy(IImageList *This,int i1,IUnknown *punk2,int i2,int dx,int dy,REFIID riid,PVOID *ppv);
189  void __RPC_STUB IImageList_Merge_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
190  HRESULT WINAPI IImageList_Clone_Proxy(IImageList *This,REFIID riid,PVOID *ppv);
191  void __RPC_STUB IImageList_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
192  HRESULT WINAPI IImageList_GetImageRect_Proxy(IImageList *This,int i,RECT *prc);
193  void __RPC_STUB IImageList_GetImageRect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
194  HRESULT WINAPI IImageList_GetIconSize_Proxy(IImageList *This,int *cx,int *cy);
195  void __RPC_STUB IImageList_GetIconSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
196  HRESULT WINAPI IImageList_SetIconSize_Proxy(IImageList *This,int cx,int cy);
197  void __RPC_STUB IImageList_SetIconSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
198  HRESULT WINAPI IImageList_GetImageCount_Proxy(IImageList *This,int *pi);
199  void __RPC_STUB IImageList_GetImageCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
200  HRESULT WINAPI IImageList_SetImageCount_Proxy(IImageList *This,UINT uNewCount);
201  void __RPC_STUB IImageList_SetImageCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
202  HRESULT WINAPI IImageList_SetBkColor_Proxy(IImageList *This,COLORREF clrBk,COLORREF *pclr);
203  void __RPC_STUB IImageList_SetBkColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
204  HRESULT WINAPI IImageList_GetBkColor_Proxy(IImageList *This,COLORREF *pclr);
205  void __RPC_STUB IImageList_GetBkColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
206  HRESULT WINAPI IImageList_BeginDrag_Proxy(IImageList *This,int iTrack,int dxHotspot,int dyHotspot);
207  void __RPC_STUB IImageList_BeginDrag_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
208  HRESULT WINAPI IImageList_EndDrag_Proxy(IImageList *This);
209  void __RPC_STUB IImageList_EndDrag_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
210  HRESULT WINAPI IImageList_DragEnter_Proxy(IImageList *This,HWND hwndLock,int x,int y);
211  void __RPC_STUB IImageList_DragEnter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
212  HRESULT WINAPI IImageList_DragLeave_Proxy(IImageList *This,HWND hwndLock);
213  void __RPC_STUB IImageList_DragLeave_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
214  HRESULT WINAPI IImageList_DragMove_Proxy(IImageList *This,int x,int y);
215  void __RPC_STUB IImageList_DragMove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
216  HRESULT WINAPI IImageList_SetDragCursorImage_Proxy(IImageList *This,IUnknown *punk,int iDrag,int dxHotspot,int dyHotspot);
217  void __RPC_STUB IImageList_SetDragCursorImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
218  HRESULT WINAPI IImageList_DragShowNolock_Proxy(IImageList *This,WINBOOL fShow);
219  void __RPC_STUB IImageList_DragShowNolock_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
220  HRESULT WINAPI IImageList_GetDragImage_Proxy(IImageList *This,POINT *ppt,POINT *pptHotspot,REFIID riid,PVOID *ppv);
221  void __RPC_STUB IImageList_GetDragImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
222  HRESULT WINAPI IImageList_GetItemFlags_Proxy(IImageList *This,int i,DWORD *dwFlags);
223  void __RPC_STUB IImageList_GetItemFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
224  HRESULT WINAPI IImageList_GetOverlayImage_Proxy(IImageList *This,int iOverlay,int *piIndex);
225  void __RPC_STUB IImageList_GetOverlayImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
226#endif
227
228#ifndef __CommonControlObjects_LIBRARY_DEFINED__
229#define __CommonControlObjects_LIBRARY_DEFINED__
230  EXTERN_C const IID LIBID_CommonControlObjects;
231  EXTERN_C const CLSID CLSID_ImageList;
232#ifdef __cplusplus
233  class ImageList;
234#endif
235#endif
236
237#ifdef __cplusplus
238}
239#endif
240#endif
241