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 #include "rpc.h" 7 #include "rpcndr.h" 8 #ifndef COM_NO_WINDOWS_H 9 #include "windows.h" 10 #include "ole2.h" 11 #endif 12 13 #ifndef __datapath_h__ 14 #define __datapath_h__ 15 16 #ifdef __cplusplus 17 extern "C"{ 18 #endif 19 20 #ifndef __IObjectWithSite_FWD_DEFINED__ 21 #define __IObjectWithSite_FWD_DEFINED__ 22 typedef struct IObjectWithSite IObjectWithSite; 23 #endif 24 25 #ifndef __IDataPathBrowser_FWD_DEFINED__ 26 #define __IDataPathBrowser_FWD_DEFINED__ 27 typedef struct IDataPathBrowser IDataPathBrowser; 28 #endif 29 30 #ifndef __IProvideClassInfo3_FWD_DEFINED__ 31 #define __IProvideClassInfo3_FWD_DEFINED__ 32 typedef struct IProvideClassInfo3 IProvideClassInfo3; 33 #endif 34 35 #include "objidl.h" 36 #include "oleidl.h" 37 #include "oaidl.h" 38 #include "olectl.h" 39 #include "urlmon.h" 40 41 #ifndef __MIDL_user_allocate_free_DEFINED__ 42 #define __MIDL_user_allocate_free_DEFINED__ 43 void *__RPC_API MIDL_user_allocate(size_t); 44 void __RPC_API MIDL_user_free(void *); 45 #endif 46 47 #include "idispids.h" 48 typedef BSTR OLE_DATAPATH; 49 #define SID_SDataPathBrowser IID_IDataPathBrowser 50 51 EXTERN_C const GUID OLE_DATAPATH_BMP; 52 EXTERN_C const GUID OLE_DATAPATH_DIB; 53 EXTERN_C const GUID OLE_DATAPATH_WMF; 54 EXTERN_C const GUID OLE_DATAPATH_ENHMF; 55 EXTERN_C const GUID OLE_DATAPATH_GIF; 56 EXTERN_C const GUID OLE_DATAPATH_JPEG; 57 EXTERN_C const GUID OLE_DATAPATH_TIFF; 58 EXTERN_C const GUID OLE_DATAPATH_XBM; 59 EXTERN_C const GUID OLE_DATAPATH_PCX; 60 EXTERN_C const GUID OLE_DATAPATH_PICT; 61 EXTERN_C const GUID OLE_DATAPATH_CGM; 62 EXTERN_C const GUID OLE_DATAPATH_EPS; 63 EXTERN_C const GUID OLE_DATAPATH_COMMONIMAGE; 64 EXTERN_C const GUID OLE_DATAPATH_ALLIMAGE; 65 EXTERN_C const GUID OLE_DATAPATH_AVI; 66 EXTERN_C const GUID OLE_DATAPATH_MPEG; 67 EXTERN_C const GUID OLE_DATAPATH_QUICKTIME; 68 EXTERN_C const GUID OLE_DATAPATH_BASICAUDIO; 69 EXTERN_C const GUID OLE_DATAPATH_MIDI; 70 EXTERN_C const GUID OLE_DATAPATH_WAV; 71 EXTERN_C const GUID OLE_DATAPATH_RIFF; 72 EXTERN_C const GUID OLE_DATAPATH_SOUND; 73 EXTERN_C const GUID OLE_DATAPATH_VIDEO; 74 EXTERN_C const GUID OLE_DATAPATH_ALLMM; 75 EXTERN_C const GUID OLE_DATAPATH_ANSITEXT; 76 EXTERN_C const GUID OLE_DATAPATH_UNICODE; 77 EXTERN_C const GUID OLE_DATAPATH_RTF; 78 EXTERN_C const GUID OLE_DATAPATH_HTML; 79 EXTERN_C const GUID OLE_DATAPATH_POSTSCRIPT; 80 EXTERN_C const GUID OLE_DATAPATH_ALLTEXT; 81 EXTERN_C const GUID OLE_DATAPATH_DIF; 82 EXTERN_C const GUID OLE_DATAPATH_SYLK; 83 EXTERN_C const GUID OLE_DATAPATH_BIFF; 84 EXTERN_C const GUID OLE_DATAPATH_PALETTE; 85 EXTERN_C const GUID OLE_DATAPATH_PENDATA; 86 EXTERN_C const GUID FLAGID_Internet; 87 EXTERN_C const GUID GUID_PathProperty; 88 EXTERN_C const GUID GUID_HasPathProperties; 89 EXTERN_C const GUID ARRAYID_PathProperties; 90 91 #ifndef _LPOBJECTWITHSITE_DEFINED 92 #define _LPOBJECTWITHSITE_DEFINED 93 extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_c_ifspec; 94 extern RPC_IF_HANDLE __MIDL__intf_0000_v0_0_s_ifspec; 95 #ifndef __IObjectWithSite_INTERFACE_DEFINED__ 96 #define __IObjectWithSite_INTERFACE_DEFINED__ 97 typedef IObjectWithSite *LPOBJECTWITHSITE; 98 EXTERN_C const IID IID_IObjectWithSite; 99 #if defined(__cplusplus) && !defined(CINTERFACE) 100 struct IObjectWithSite : public IUnknown { 101 public: 102 virtual HRESULT WINAPI SetSite(IUnknown *pUnkSite) = 0; 103 virtual HRESULT WINAPI GetSite(REFIID riid,void **ppvSite) = 0; 104 }; 105 #else 106 typedef struct IObjectWithSiteVtbl { 107 BEGIN_INTERFACE 108 HRESULT (WINAPI *QueryInterface)(IObjectWithSite *This,REFIID riid,void **ppvObject); 109 ULONG (WINAPI *AddRef)(IObjectWithSite *This); 110 ULONG (WINAPI *Release)(IObjectWithSite *This); 111 HRESULT (WINAPI *SetSite)(IObjectWithSite *This,IUnknown *pUnkSite); 112 HRESULT (WINAPI *GetSite)(IObjectWithSite *This,REFIID riid,void **ppvSite); 113 END_INTERFACE 114 } IObjectWithSiteVtbl; 115 struct IObjectWithSite { 116 CONST_VTBL struct IObjectWithSiteVtbl *lpVtbl; 117 }; 118 #ifdef COBJMACROS 119 #define IObjectWithSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 120 #define IObjectWithSite_AddRef(This) (This)->lpVtbl->AddRef(This) 121 #define IObjectWithSite_Release(This) (This)->lpVtbl->Release(This) 122 #define IObjectWithSite_SetSite(This,pUnkSite) (This)->lpVtbl->SetSite(This,pUnkSite) 123 #define IObjectWithSite_GetSite(This,riid,ppvSite) (This)->lpVtbl->GetSite(This,riid,ppvSite) 124 #endif 125 #endif 126 HRESULT WINAPI IObjectWithSite_SetSite_Proxy(IObjectWithSite *This,IUnknown *pUnkSite); 127 void __RPC_STUB IObjectWithSite_SetSite_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 128 HRESULT WINAPI IObjectWithSite_GetSite_Proxy(IObjectWithSite *This,REFIID riid,void **ppvSite); 129 void __RPC_STUB IObjectWithSite_GetSite_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 130 #endif 131 #endif 132 133 #ifndef _LPDATAPATHBROWSER_DEFINED 134 #define _LPDATAPATHBROWSER_DEFINED 135 extern RPC_IF_HANDLE __MIDL__intf_0119_v0_0_c_ifspec; 136 extern RPC_IF_HANDLE __MIDL__intf_0119_v0_0_s_ifspec; 137 #ifndef __IDataPathBrowser_INTERFACE_DEFINED__ 138 #define __IDataPathBrowser_INTERFACE_DEFINED__ 139 EXTERN_C const IID IID_IDataPathBrowser; 140 #if defined(__cplusplus) && !defined(CINTERFACE) 141 struct IDataPathBrowser : public IUnknown { 142 public: 143 virtual HRESULT WINAPI BrowseType(REFGUID rguidPathType,LPOLESTR pszDefaultPath,ULONG cchPath,LPOLESTR pszPath,HWND hWnd) = 0; 144 }; 145 #else 146 typedef struct IDataPathBrowserVtbl { 147 BEGIN_INTERFACE 148 HRESULT (WINAPI *QueryInterface)(IDataPathBrowser *This,REFIID riid,void **ppvObject); 149 ULONG (WINAPI *AddRef)(IDataPathBrowser *This); 150 ULONG (WINAPI *Release)(IDataPathBrowser *This); 151 HRESULT (WINAPI *BrowseType)(IDataPathBrowser *This,REFGUID rguidPathType,LPOLESTR pszDefaultPath,ULONG cchPath,LPOLESTR pszPath,HWND hWnd); 152 END_INTERFACE 153 } IDataPathBrowserVtbl; 154 struct IDataPathBrowser { 155 CONST_VTBL struct IDataPathBrowserVtbl *lpVtbl; 156 }; 157 #ifdef COBJMACROS 158 #define IDataPathBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 159 #define IDataPathBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) 160 #define IDataPathBrowser_Release(This) (This)->lpVtbl->Release(This) 161 #define IDataPathBrowser_BrowseType(This,rguidPathType,pszDefaultPath,cchPath,pszPath,hWnd) (This)->lpVtbl->BrowseType(This,rguidPathType,pszDefaultPath,cchPath,pszPath,hWnd) 162 #endif 163 #endif 164 HRESULT WINAPI IDataPathBrowser_BrowseType_Proxy(IDataPathBrowser *This,REFGUID rguidPathType,LPOLESTR pszDefaultPath,ULONG cchPath,LPOLESTR pszPath,HWND hWnd); 165 void __RPC_STUB IDataPathBrowser_BrowseType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 166 #endif 167 #endif 168 169 #ifndef _LPPROVIDECLASSINFO3_DEFINED 170 #define _LPPROVIDECLASSINFO3_DEFINED 171 extern RPC_IF_HANDLE __MIDL__intf_0120_v0_0_c_ifspec; 172 extern RPC_IF_HANDLE __MIDL__intf_0120_v0_0_s_ifspec; 173 #ifndef __IProvideClassInfo3_INTERFACE_DEFINED__ 174 #define __IProvideClassInfo3_INTERFACE_DEFINED__ 175 typedef IProvideClassInfo3 *LPPROVIDECLASSINFO3; 176 enum __MIDL_IProvideClassInfo3_0001 177 { INTERNETFLAG_USESDATAPATHS = 0x1 178 }; 179 EXTERN_C const IID IID_IProvideClassInfo3; 180 #if defined(__cplusplus) && !defined(CINTERFACE) 181 struct IProvideClassInfo3 : public IProvideClassInfo2 { 182 public: 183 virtual HRESULT WINAPI GetGUIDDwordArrays(REFGUID rguidArray,CAUUID *pcaUUID,CADWORD *pcadw) = 0; 184 virtual HRESULT WINAPI GetClassInfoLocale(ITypeInfo **ppITypeInfo,LCID lcid) = 0; 185 virtual HRESULT WINAPI GetFlags(REFGUID guidGroup,DWORD *pdwFlags) = 0; 186 }; 187 #else 188 typedef struct IProvideClassInfo3Vtbl { 189 BEGIN_INTERFACE 190 HRESULT (WINAPI *QueryInterface)(IProvideClassInfo3 *This,REFIID riid,void **ppvObject); 191 ULONG (WINAPI *AddRef)(IProvideClassInfo3 *This); 192 ULONG (WINAPI *Release)(IProvideClassInfo3 *This); 193 HRESULT (WINAPI *GetClassInfo)(IProvideClassInfo3 *This,ITypeInfo **ppTI); 194 HRESULT (WINAPI *GetGUID)(IProvideClassInfo3 *This,DWORD dwGuidKind,GUID *pGUID); 195 HRESULT (WINAPI *GetGUIDDwordArrays)(IProvideClassInfo3 *This,REFGUID rguidArray,CAUUID *pcaUUID,CADWORD *pcadw); 196 HRESULT (WINAPI *GetClassInfoLocale)(IProvideClassInfo3 *This,ITypeInfo **ppITypeInfo,LCID lcid); 197 HRESULT (WINAPI *GetFlags)(IProvideClassInfo3 *This,REFGUID guidGroup,DWORD *pdwFlags); 198 END_INTERFACE 199 } IProvideClassInfo3Vtbl; 200 struct IProvideClassInfo3 { 201 CONST_VTBL struct IProvideClassInfo3Vtbl *lpVtbl; 202 }; 203 #ifdef COBJMACROS 204 #define IProvideClassInfo3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 205 #define IProvideClassInfo3_AddRef(This) (This)->lpVtbl->AddRef(This) 206 #define IProvideClassInfo3_Release(This) (This)->lpVtbl->Release(This) 207 #define IProvideClassInfo3_GetClassInfo(This,ppTI) (This)->lpVtbl->GetClassInfo(This,ppTI) 208 #define IProvideClassInfo3_GetGUID(This,dwGuidKind,pGUID) (This)->lpVtbl->GetGUID(This,dwGuidKind,pGUID) 209 #define IProvideClassInfo3_GetGUIDDwordArrays(This,rguidArray,pcaUUID,pcadw) (This)->lpVtbl->GetGUIDDwordArrays(This,rguidArray,pcaUUID,pcadw) 210 #define IProvideClassInfo3_GetClassInfoLocale(This,ppITypeInfo,lcid) (This)->lpVtbl->GetClassInfoLocale(This,ppITypeInfo,lcid) 211 #define IProvideClassInfo3_GetFlags(This,guidGroup,pdwFlags) (This)->lpVtbl->GetFlags(This,guidGroup,pdwFlags) 212 #endif 213 #endif 214 HRESULT WINAPI IProvideClassInfo3_GetGUIDDwordArrays_Proxy(IProvideClassInfo3 *This,REFGUID rguidArray,CAUUID *pcaUUID,CADWORD *pcadw); 215 void __RPC_STUB IProvideClassInfo3_GetGUIDDwordArrays_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 216 HRESULT WINAPI IProvideClassInfo3_GetClassInfoLocale_Proxy(IProvideClassInfo3 *This,ITypeInfo **ppITypeInfo,LCID lcid); 217 void __RPC_STUB IProvideClassInfo3_GetClassInfoLocale_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 218 HRESULT WINAPI IProvideClassInfo3_GetFlags_Proxy(IProvideClassInfo3 *This,REFGUID guidGroup,DWORD *pdwFlags); 219 void __RPC_STUB IProvideClassInfo3_GetFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 220 #endif 221 #endif 222 223 extern RPC_IF_HANDLE __MIDL__intf_0121_v0_0_c_ifspec; 224 extern RPC_IF_HANDLE __MIDL__intf_0121_v0_0_s_ifspec; 225 226 #ifdef __cplusplus 227 } 228 #endif 229 #endif 230