1 /*** Autogenerated by WIDL 3.19 from include/uiautomationcore.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __uiautomationcore_h__ 16 #define __uiautomationcore_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __IRawElementProviderSimple_FWD_DEFINED__ 21 #define __IRawElementProviderSimple_FWD_DEFINED__ 22 typedef interface IRawElementProviderSimple IRawElementProviderSimple; 23 #ifdef __cplusplus 24 interface IRawElementProviderSimple; 25 #endif /* __cplusplus */ 26 #endif 27 28 #ifndef __IAccessibleEx_FWD_DEFINED__ 29 #define __IAccessibleEx_FWD_DEFINED__ 30 typedef interface IAccessibleEx IAccessibleEx; 31 #ifdef __cplusplus 32 interface IAccessibleEx; 33 #endif /* __cplusplus */ 34 #endif 35 36 /* Headers for imported files */ 37 38 #include <oaidl.h> 39 #include <oleacc.h> 40 41 #ifdef __cplusplus 42 extern "C" { 43 #endif 44 45 enum ProviderOptions { 46 ProviderOptions_ClientSideProvider = 0x1, 47 ProviderOptions_ServerSideProvider = 0x2, 48 ProviderOptions_NonClientAreaProvider = 0x4, 49 ProviderOptions_OverrideProvider = 0x8, 50 ProviderOptions_ProviderOwnsSetFocus = 0x10, 51 ProviderOptions_UseComThreading = 0x20 52 }; 53 typedef int PROPERTYID; 54 typedef int PATTERNID; 55 typedef int EVENTID; 56 typedef int TEXTATTRIBUTEID; 57 typedef int CONTROLTYPEID; 58 59 DEFINE_GUID(LIBID_UIA, 0x930299ce, 0x9965, 0x4dec, 0xb0,0xf4, 0xa5,0x48,0x48,0xd4,0xb6,0x67); 60 61 /***************************************************************************** 62 * IRawElementProviderSimple interface 63 */ 64 #ifndef __IRawElementProviderSimple_INTERFACE_DEFINED__ 65 #define __IRawElementProviderSimple_INTERFACE_DEFINED__ 66 67 DEFINE_GUID(IID_IRawElementProviderSimple, 0xd6dd68d1, 0x86fd, 0x4332, 0x86,0x66, 0x9a,0xbe,0xde,0xa2,0xd2,0x4c); 68 #if defined(__cplusplus) && !defined(CINTERFACE) 69 MIDL_INTERFACE("d6dd68d1-86fd-4332-8666-9abedea2d24c") 70 IRawElementProviderSimple : public IUnknown 71 { 72 virtual HRESULT STDMETHODCALLTYPE get_ProviderOptions( 73 enum ProviderOptions *pRetVal) = 0; 74 75 virtual HRESULT STDMETHODCALLTYPE GetPatternProvider( 76 PATTERNID patternId, 77 IUnknown **pRetVal) = 0; 78 79 virtual HRESULT STDMETHODCALLTYPE GetPropertyValue( 80 PROPERTYID propertyId, 81 VARIANT *pRetVal) = 0; 82 83 virtual HRESULT STDMETHODCALLTYPE get_HostRawElementProvider( 84 IRawElementProviderSimple **pRetVal) = 0; 85 86 }; 87 #ifdef __CRT_UUID_DECL 88 __CRT_UUID_DECL(IRawElementProviderSimple, 0xd6dd68d1, 0x86fd, 0x4332, 0x86,0x66, 0x9a,0xbe,0xde,0xa2,0xd2,0x4c) 89 #endif 90 #else 91 typedef struct IRawElementProviderSimpleVtbl { 92 BEGIN_INTERFACE 93 94 /*** IUnknown methods ***/ 95 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 96 IRawElementProviderSimple *This, 97 REFIID riid, 98 void **ppvObject); 99 100 ULONG (STDMETHODCALLTYPE *AddRef)( 101 IRawElementProviderSimple *This); 102 103 ULONG (STDMETHODCALLTYPE *Release)( 104 IRawElementProviderSimple *This); 105 106 /*** IRawElementProviderSimple methods ***/ 107 HRESULT (STDMETHODCALLTYPE *get_ProviderOptions)( 108 IRawElementProviderSimple *This, 109 enum ProviderOptions *pRetVal); 110 111 HRESULT (STDMETHODCALLTYPE *GetPatternProvider)( 112 IRawElementProviderSimple *This, 113 PATTERNID patternId, 114 IUnknown **pRetVal); 115 116 HRESULT (STDMETHODCALLTYPE *GetPropertyValue)( 117 IRawElementProviderSimple *This, 118 PROPERTYID propertyId, 119 VARIANT *pRetVal); 120 121 HRESULT (STDMETHODCALLTYPE *get_HostRawElementProvider)( 122 IRawElementProviderSimple *This, 123 IRawElementProviderSimple **pRetVal); 124 125 END_INTERFACE 126 } IRawElementProviderSimpleVtbl; 127 128 interface IRawElementProviderSimple { 129 CONST_VTBL IRawElementProviderSimpleVtbl* lpVtbl; 130 }; 131 132 #ifdef COBJMACROS 133 #ifndef WIDL_C_INLINE_WRAPPERS 134 /*** IUnknown methods ***/ 135 #define IRawElementProviderSimple_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 136 #define IRawElementProviderSimple_AddRef(This) (This)->lpVtbl->AddRef(This) 137 #define IRawElementProviderSimple_Release(This) (This)->lpVtbl->Release(This) 138 /*** IRawElementProviderSimple methods ***/ 139 #define IRawElementProviderSimple_get_ProviderOptions(This,pRetVal) (This)->lpVtbl->get_ProviderOptions(This,pRetVal) 140 #define IRawElementProviderSimple_GetPatternProvider(This,patternId,pRetVal) (This)->lpVtbl->GetPatternProvider(This,patternId,pRetVal) 141 #define IRawElementProviderSimple_GetPropertyValue(This,propertyId,pRetVal) (This)->lpVtbl->GetPropertyValue(This,propertyId,pRetVal) 142 #define IRawElementProviderSimple_get_HostRawElementProvider(This,pRetVal) (This)->lpVtbl->get_HostRawElementProvider(This,pRetVal) 143 #else 144 /*** IUnknown methods ***/ 145 static FORCEINLINE HRESULT IRawElementProviderSimple_QueryInterface(IRawElementProviderSimple* This,REFIID riid,void **ppvObject) { 146 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 147 } 148 static FORCEINLINE ULONG IRawElementProviderSimple_AddRef(IRawElementProviderSimple* This) { 149 return This->lpVtbl->AddRef(This); 150 } 151 static FORCEINLINE ULONG IRawElementProviderSimple_Release(IRawElementProviderSimple* This) { 152 return This->lpVtbl->Release(This); 153 } 154 /*** IRawElementProviderSimple methods ***/ 155 static FORCEINLINE HRESULT IRawElementProviderSimple_get_ProviderOptions(IRawElementProviderSimple* This,enum ProviderOptions *pRetVal) { 156 return This->lpVtbl->get_ProviderOptions(This,pRetVal); 157 } 158 static FORCEINLINE HRESULT IRawElementProviderSimple_GetPatternProvider(IRawElementProviderSimple* This,PATTERNID patternId,IUnknown **pRetVal) { 159 return This->lpVtbl->GetPatternProvider(This,patternId,pRetVal); 160 } 161 static FORCEINLINE HRESULT IRawElementProviderSimple_GetPropertyValue(IRawElementProviderSimple* This,PROPERTYID propertyId,VARIANT *pRetVal) { 162 return This->lpVtbl->GetPropertyValue(This,propertyId,pRetVal); 163 } 164 static FORCEINLINE HRESULT IRawElementProviderSimple_get_HostRawElementProvider(IRawElementProviderSimple* This,IRawElementProviderSimple **pRetVal) { 165 return This->lpVtbl->get_HostRawElementProvider(This,pRetVal); 166 } 167 #endif 168 #endif 169 170 #endif 171 172 173 #endif /* __IRawElementProviderSimple_INTERFACE_DEFINED__ */ 174 175 /***************************************************************************** 176 * IAccessibleEx interface 177 */ 178 #ifndef __IAccessibleEx_INTERFACE_DEFINED__ 179 #define __IAccessibleEx_INTERFACE_DEFINED__ 180 181 DEFINE_GUID(IID_IAccessibleEx, 0xf8b80ada, 0x2c44, 0x48d0, 0x89,0xbe, 0x5f,0xf2,0x3c,0x9c,0xd8,0x75); 182 #if defined(__cplusplus) && !defined(CINTERFACE) 183 MIDL_INTERFACE("f8b80ada-2c44-48d0-89be-5ff23c9cd875") 184 IAccessibleEx : public IUnknown 185 { 186 virtual HRESULT STDMETHODCALLTYPE GetObjectForChild( 187 LONG idChild, 188 IAccessibleEx **pRetVal) = 0; 189 190 virtual HRESULT STDMETHODCALLTYPE GetIAccessiblePair( 191 IAccessible **ppAcc, 192 LONG *pidChild) = 0; 193 194 virtual HRESULT STDMETHODCALLTYPE GetRuntimeId( 195 SAFEARRAY **pRetVal) = 0; 196 197 virtual HRESULT STDMETHODCALLTYPE ConvertReturnedElement( 198 IRawElementProviderSimple *pIn, 199 IAccessibleEx **ppRetValOut) = 0; 200 201 }; 202 #ifdef __CRT_UUID_DECL 203 __CRT_UUID_DECL(IAccessibleEx, 0xf8b80ada, 0x2c44, 0x48d0, 0x89,0xbe, 0x5f,0xf2,0x3c,0x9c,0xd8,0x75) 204 #endif 205 #else 206 typedef struct IAccessibleExVtbl { 207 BEGIN_INTERFACE 208 209 /*** IUnknown methods ***/ 210 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 211 IAccessibleEx *This, 212 REFIID riid, 213 void **ppvObject); 214 215 ULONG (STDMETHODCALLTYPE *AddRef)( 216 IAccessibleEx *This); 217 218 ULONG (STDMETHODCALLTYPE *Release)( 219 IAccessibleEx *This); 220 221 /*** IAccessibleEx methods ***/ 222 HRESULT (STDMETHODCALLTYPE *GetObjectForChild)( 223 IAccessibleEx *This, 224 LONG idChild, 225 IAccessibleEx **pRetVal); 226 227 HRESULT (STDMETHODCALLTYPE *GetIAccessiblePair)( 228 IAccessibleEx *This, 229 IAccessible **ppAcc, 230 LONG *pidChild); 231 232 HRESULT (STDMETHODCALLTYPE *GetRuntimeId)( 233 IAccessibleEx *This, 234 SAFEARRAY **pRetVal); 235 236 HRESULT (STDMETHODCALLTYPE *ConvertReturnedElement)( 237 IAccessibleEx *This, 238 IRawElementProviderSimple *pIn, 239 IAccessibleEx **ppRetValOut); 240 241 END_INTERFACE 242 } IAccessibleExVtbl; 243 244 interface IAccessibleEx { 245 CONST_VTBL IAccessibleExVtbl* lpVtbl; 246 }; 247 248 #ifdef COBJMACROS 249 #ifndef WIDL_C_INLINE_WRAPPERS 250 /*** IUnknown methods ***/ 251 #define IAccessibleEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 252 #define IAccessibleEx_AddRef(This) (This)->lpVtbl->AddRef(This) 253 #define IAccessibleEx_Release(This) (This)->lpVtbl->Release(This) 254 /*** IAccessibleEx methods ***/ 255 #define IAccessibleEx_GetObjectForChild(This,idChild,pRetVal) (This)->lpVtbl->GetObjectForChild(This,idChild,pRetVal) 256 #define IAccessibleEx_GetIAccessiblePair(This,ppAcc,pidChild) (This)->lpVtbl->GetIAccessiblePair(This,ppAcc,pidChild) 257 #define IAccessibleEx_GetRuntimeId(This,pRetVal) (This)->lpVtbl->GetRuntimeId(This,pRetVal) 258 #define IAccessibleEx_ConvertReturnedElement(This,pIn,ppRetValOut) (This)->lpVtbl->ConvertReturnedElement(This,pIn,ppRetValOut) 259 #else 260 /*** IUnknown methods ***/ 261 static FORCEINLINE HRESULT IAccessibleEx_QueryInterface(IAccessibleEx* This,REFIID riid,void **ppvObject) { 262 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 263 } 264 static FORCEINLINE ULONG IAccessibleEx_AddRef(IAccessibleEx* This) { 265 return This->lpVtbl->AddRef(This); 266 } 267 static FORCEINLINE ULONG IAccessibleEx_Release(IAccessibleEx* This) { 268 return This->lpVtbl->Release(This); 269 } 270 /*** IAccessibleEx methods ***/ 271 static FORCEINLINE HRESULT IAccessibleEx_GetObjectForChild(IAccessibleEx* This,LONG idChild,IAccessibleEx **pRetVal) { 272 return This->lpVtbl->GetObjectForChild(This,idChild,pRetVal); 273 } 274 static FORCEINLINE HRESULT IAccessibleEx_GetIAccessiblePair(IAccessibleEx* This,IAccessible **ppAcc,LONG *pidChild) { 275 return This->lpVtbl->GetIAccessiblePair(This,ppAcc,pidChild); 276 } 277 static FORCEINLINE HRESULT IAccessibleEx_GetRuntimeId(IAccessibleEx* This,SAFEARRAY **pRetVal) { 278 return This->lpVtbl->GetRuntimeId(This,pRetVal); 279 } 280 static FORCEINLINE HRESULT IAccessibleEx_ConvertReturnedElement(IAccessibleEx* This,IRawElementProviderSimple *pIn,IAccessibleEx **ppRetValOut) { 281 return This->lpVtbl->ConvertReturnedElement(This,pIn,ppRetValOut); 282 } 283 #endif 284 #endif 285 286 #endif 287 288 289 #endif /* __IAccessibleEx_INTERFACE_DEFINED__ */ 290 291 /* Begin additional prototypes for all interfaces */ 292 293 ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); 294 unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); 295 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); 296 void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); 297 298 /* End additional prototypes */ 299 300 #ifdef __cplusplus 301 } 302 #endif 303 304 #endif /* __uiautomationcore_h__ */ 305