• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*** Autogenerated by WIDL 4.12.1 from include/oleacc.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __oleacc_h__
17 #define __oleacc_h__
18 
19 /* Forward declarations */
20 
21 #ifndef __IAccessible_FWD_DEFINED__
22 #define __IAccessible_FWD_DEFINED__
23 typedef interface IAccessible IAccessible;
24 #ifdef __cplusplus
25 interface IAccessible;
26 #endif /* __cplusplus */
27 #endif
28 
29 /* Headers for imported files */
30 
31 #include <oaidl.h>
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 #include <_mingw_unicode.h>
38 #ifndef __IAccessibleHandler_FWD_DEFINED__
39 #define __IAccessibleHandler_FWD_DEFINED__
40 typedef struct IAccessibleHandler IAccessibleHandler;
41 #endif
42 
43 #ifndef __IAccIdentity_FWD_DEFINED__
44 #define __IAccIdentity_FWD_DEFINED__
45 typedef struct IAccIdentity IAccIdentity;
46 #endif
47 
48 #ifndef __IAccPropServer_FWD_DEFINED__
49 #define __IAccPropServer_FWD_DEFINED__
50 typedef struct IAccPropServer IAccPropServer;
51 #endif
52 
53 #ifndef __IAccPropServices_FWD_DEFINED__
54 #define __IAccPropServices_FWD_DEFINED__
55 typedef struct IAccPropServices IAccPropServices;
56 #endif
57 
58 #ifndef __IAccessible_FWD_DEFINED__
59 #define __IAccessible_FWD_DEFINED__
60 typedef struct IAccessible IAccessible;
61 #endif
62 
63 #ifndef __IAccessibleHandler_FWD_DEFINED__
64 #define __IAccessibleHandler_FWD_DEFINED__
65 typedef struct IAccessibleHandler IAccessibleHandler;
66 #endif
67 
68 #ifndef __IAccIdentity_FWD_DEFINED__
69 #define __IAccIdentity_FWD_DEFINED__
70 typedef struct IAccIdentity IAccIdentity;
71 #endif
72 
73 #ifndef __IAccPropServer_FWD_DEFINED__
74 #define __IAccPropServer_FWD_DEFINED__
75 typedef struct IAccPropServer IAccPropServer;
76 #endif
77 
78 #ifndef __IAccPropServices_FWD_DEFINED__
79 #define __IAccPropServices_FWD_DEFINED__
80 typedef struct IAccPropServices IAccPropServices;
81 #endif
82 
83 #ifndef __CAccPropServices_FWD_DEFINED__
84 #define __CAccPropServices_FWD_DEFINED__
85 
86 #ifdef __cplusplus
87 typedef class CAccPropServices CAccPropServices;
88 #else
89 typedef struct CAccPropServices CAccPropServices;
90 #endif
91 #endif
92 
93   typedef LRESULT (WINAPI *LPFNLRESULTFROMOBJECT)(REFIID riid,WPARAM wParam,LPUNKNOWN punk);
94   typedef HRESULT (WINAPI *LPFNOBJECTFROMLRESULT)(LRESULT lResult,REFIID riid,WPARAM wParam,void **ppvObject);
95   typedef HRESULT (WINAPI *LPFNACCESSIBLEOBJECTFROMWINDOW)(HWND hwnd,DWORD dwId,REFIID riid,void **ppvObject);
96   typedef HRESULT (WINAPI *LPFNACCESSIBLEOBJECTFROMPOINT)(POINT ptScreen,IAccessible **ppacc,VARIANT *pvarChild);
97   typedef HRESULT (WINAPI *LPFNCREATESTDACCESSIBLEOBJECT)(HWND hwnd,LONG idObject,REFIID riid,void **ppvObject);
98   typedef HRESULT (WINAPI *LPFNACCESSIBLECHILDREN)(IAccessible *paccContainer,LONG iChildStart,LONG cChildren,VARIANT *rgvarChildren,LONG *pcObtained);
99 
100   DEFINE_GUID(LIBID_Accessibility,0x1ea4dbf0,0x3c3b,0x11cf,0x81,0x0c,0x00,0xaa,0x00,0x38,0x9b,0x71);
101   DEFINE_GUID(IID_IAccessibleHandler,0x03022430,0xABC4,0x11d0,0xBD,0xE2,0x00,0xAA,0x00,0x1A,0x19,0x53);
102   DEFINE_GUID(IID_IAccIdentity,0x7852b78d,0x1cfd,0x41c1,0xa6,0x15,0x9c,0x0c,0x85,0x96,0x0b,0x5f);
103   DEFINE_GUID(IID_IAccPropServer,0x76c0dbbb,0x15e0,0x4e7b,0xb6,0x1b,0x20,0xee,0xea,0x20,0x01,0xe0);
104   DEFINE_GUID(IID_IAccPropServices,0x6e26e776,0x04f0,0x495d,0x80,0xe4,0x33,0x30,0x35,0x2e,0x31,0x69);
105   DEFINE_GUID(IID_IAccPropMgrInternal,0x2bd370a9,0x3e7f,0x4edd,0x8a,0x85,0xf8,0xfe,0xd1,0xf8,0xe5,0x1f);
106   DEFINE_GUID(CLSID_AccPropServices,0xb5f8350b,0x0548,0x48b1,0xa6,0xee,0x88,0xbd,0x00,0xb4,0xa5,0xe7);
107   DEFINE_GUID(IIS_IsOleaccProxy,0x902697fa,0x80e4,0x4560,0x80,0x2a,0xa1,0x3f,0x22,0xa6,0x47,0x09);
108 
109 #define GetRoleText __MINGW_NAME_AW(GetRoleText)
110 #define GetStateText __MINGW_NAME_AW(GetStateText)
111 #define CreateStdAccessibleProxy __MINGW_NAME_AW(CreateStdAccessibleProxy)
112 
113   STDAPI_(LRESULT) LresultFromObject(REFIID riid,WPARAM wParam,LPUNKNOWN punk);
114   STDAPI ObjectFromLresult(LRESULT lResult,REFIID riid,WPARAM wParam,void **ppvObject);
115   STDAPI WindowFromAccessibleObject(IAccessible*,HWND *phwnd);
116   STDAPI AccessibleObjectFromWindow(HWND hwnd,DWORD dwId,REFIID riid,void **ppvObject);
117   STDAPI AccessibleObjectFromEvent(HWND hwnd,DWORD dwId,DWORD dwChildId,IAccessible **ppacc,VARIANT *pvarChild);
118   STDAPI AccessibleObjectFromPoint(POINT ptScreen,IAccessible **ppacc,VARIANT *pvarChild);
119   STDAPI AccessibleChildren (IAccessible *paccContainer,LONG iChildStart,LONG cChildren,VARIANT *rgvarChildren,LONG *pcObtained);
120   STDAPI_(UINT) GetRoleTextA(DWORD lRole,LPSTR lpszRole,UINT cchRoleMax);
121   STDAPI_(UINT) GetRoleTextW(DWORD lRole,LPWSTR lpszRole,UINT cchRoleMax);
122   STDAPI_(UINT) GetStateTextA(DWORD lStateBit,LPSTR lpszState,UINT cchState);
123   STDAPI_(UINT) GetStateTextW(DWORD lStateBit,LPWSTR lpszState,UINT cchState);
124   STDAPI_(VOID) GetOleaccVersionInfo(DWORD *pVer,DWORD *pBuild);
125   STDAPI CreateStdAccessibleObject(HWND hwnd,LONG idObject,REFIID riid,void **ppvObject);
126   STDAPI CreateStdAccessibleProxyA(HWND hwnd,LPCSTR pClassName,LONG idObject,REFIID riid,void **ppvObject);
127   STDAPI CreateStdAccessibleProxyW(HWND hwnd,LPCWSTR pClassName,LONG idObject,REFIID riid,void **ppvObject);
128 
129 #define MSAA_MENU_SIG __MSABI_LONG(0xAA0DF00D)
130 
131   typedef struct tagMSAAMENUINFO {
132     DWORD dwMSAASignature;
133     DWORD cchWText;
134     LPWSTR pszWText;
135   } MSAAMENUINFO,*LPMSAAMENUINFO;
136 
137   DEFINE_GUID(PROPID_ACC_NAME ,0x608d3df8,0x8128,0x4aa7,0xa4,0x28,0xf5,0x5e,0x49,0x26,0x72,0x91);
138   DEFINE_GUID(PROPID_ACC_VALUE ,0x123fe443,0x211a,0x4615,0x95,0x27,0xc4,0x5a,0x7e,0x93,0x71,0x7a);
139   DEFINE_GUID(PROPID_ACC_DESCRIPTION ,0x4d48dfe4,0xbd3f,0x491f,0xa6,0x48,0x49,0x2d,0x6f,0x20,0xc5,0x88);
140   DEFINE_GUID(PROPID_ACC_ROLE ,0xcb905ff2,0x7bd1,0x4c05,0xb3,0xc8,0xe6,0xc2,0x41,0x36,0x4d,0x70);
141   DEFINE_GUID(PROPID_ACC_STATE ,0xa8d4d5b0,0x0a21,0x42d0,0xa5,0xc0,0x51,0x4e,0x98,0x4f,0x45,0x7b);
142   DEFINE_GUID(PROPID_ACC_HELP ,0xc831e11f,0x44db,0x4a99,0x97,0x68,0xcb,0x8f,0x97,0x8b,0x72,0x31);
143   DEFINE_GUID(PROPID_ACC_KEYBOARDSHORTCUT ,0x7d9bceee,0x7d1e,0x4979,0x93,0x82,0x51,0x80,0xf4,0x17,0x2c,0x34);
144   DEFINE_GUID(PROPID_ACC_DEFAULTACTION ,0x180c072b,0xc27f,0x43c7,0x99,0x22,0xf6,0x35,0x62,0xa4,0x63,0x2b);
145   DEFINE_GUID(PROPID_ACC_HELPTOPIC ,0x787d1379,0x8ede,0x440b,0x8a,0xec,0x11,0xf7,0xbf,0x90,0x30,0xb3);
146   DEFINE_GUID(PROPID_ACC_FOCUS ,0x6eb335df,0x1c29,0x4127,0xb1,0x2c,0xde,0xe9,0xfd,0x15,0x7f,0x2b);
147   DEFINE_GUID(PROPID_ACC_SELECTION ,0xb99d073c,0xd731,0x405b,0x90,0x61,0xd9,0x5e,0x8f,0x84,0x29,0x84);
148   DEFINE_GUID(PROPID_ACC_PARENT ,0x474c22b6,0xffc2,0x467a,0xb1,0xb5,0xe9,0x58,0xb4,0x65,0x73,0x30);
149   DEFINE_GUID(PROPID_ACC_NAV_UP ,0x016e1a2b,0x1a4e,0x4767,0x86,0x12,0x33,0x86,0xf6,0x69,0x35,0xec);
150   DEFINE_GUID(PROPID_ACC_NAV_DOWN ,0x031670ed,0x3cdf,0x48d2,0x96,0x13,0x13,0x8f,0x2d,0xd8,0xa6,0x68);
151   DEFINE_GUID(PROPID_ACC_NAV_LEFT ,0x228086cb,0x82f1,0x4a39,0x87,0x05,0xdc,0xdc,0x0f,0xff,0x92,0xf5);
152   DEFINE_GUID(PROPID_ACC_NAV_RIGHT ,0xcd211d9f,0xe1cb,0x4fe5,0xa7,0x7c,0x92,0x0b,0x88,0x4d,0x09,0x5b);
153   DEFINE_GUID(PROPID_ACC_NAV_PREV ,0x776d3891,0xc73b,0x4480,0xb3,0xf6,0x07,0x6a,0x16,0xa1,0x5a,0xf6);
154   DEFINE_GUID(PROPID_ACC_NAV_NEXT ,0x1cdc5455,0x8cd9,0x4c92,0xa3,0x71,0x39,0x39,0xa2,0xfe,0x3e,0xee);
155   DEFINE_GUID(PROPID_ACC_NAV_FIRSTCHILD ,0xcfd02558,0x557b,0x4c67,0x84,0xf9,0x2a,0x09,0xfc,0xe4,0x07,0x49);
156   DEFINE_GUID(PROPID_ACC_NAV_LASTCHILD ,0x302ecaa5,0x48d5,0x4f8d,0xb6,0x71,0x1a,0x8d,0x20,0xa7,0x78,0x32);
157   DEFINE_GUID(PROPID_ACC_ROLEMAP ,0xf79acda2,0x140d,0x4fe6,0x89,0x14,0x20,0x84,0x76,0x32,0x82,0x69);
158   DEFINE_GUID(PROPID_ACC_VALUEMAP ,0xda1c3d79,0xfc5c,0x420e,0xb3,0x99,0x9d,0x15,0x33,0x54,0x9e,0x75);
159   DEFINE_GUID(PROPID_ACC_STATEMAP ,0x43946c5e,0x0ac0,0x4042,0xb5,0x25,0x07,0xbb,0xdb,0xe1,0x7f,0xa7);
160   DEFINE_GUID(PROPID_ACC_DESCRIPTIONMAP ,0x1ff1435f,0x8a14,0x477b,0xb2,0x26,0xa0,0xab,0xe2,0x79,0x97,0x5d);
161   DEFINE_GUID(PROPID_ACC_DODEFAULTACTION ,0x1ba09523,0x2e3b,0x49a6,0xa0,0x59,0x59,0x68,0x2a,0x3c,0x48,0xfd);
162 #define NAVDIR_MIN (0)
163 #define NAVDIR_UP (0x1)
164 #define NAVDIR_DOWN (0x2)
165 #define NAVDIR_LEFT (0x3)
166 #define NAVDIR_RIGHT (0x4)
167 #define NAVDIR_NEXT (0x5)
168 #define NAVDIR_PREVIOUS (0x6)
169 #define NAVDIR_FIRSTCHILD (0x7)
170 #define NAVDIR_LASTCHILD (0x8)
171 #define NAVDIR_MAX (0x9)
172 
173 #define SELFLAG_NONE (0)
174 #define SELFLAG_TAKEFOCUS (0x1)
175 #define SELFLAG_TAKESELECTION (0x2)
176 #define SELFLAG_EXTENDSELECTION (0x4)
177 #define SELFLAG_ADDSELECTION (0x8)
178 #define SELFLAG_REMOVESELECTION (0x10)
179 #define SELFLAG_VALID (0x1f)
180 
181 #ifndef STATE_SYSTEM_UNAVAILABLE
182 #define STATE_SYSTEM_NORMAL (0)
183 #define STATE_SYSTEM_UNAVAILABLE (0x1)
184 #define STATE_SYSTEM_SELECTED (0x2)
185 #define STATE_SYSTEM_FOCUSED (0x4)
186 #define STATE_SYSTEM_PRESSED (0x8)
187 #define STATE_SYSTEM_CHECKED (0x10)
188 #define STATE_SYSTEM_MIXED (0x20)
189 #define STATE_SYSTEM_INDETERMINATE (STATE_SYSTEM_MIXED)
190 #define STATE_SYSTEM_READONLY (0x40)
191 #define STATE_SYSTEM_HOTTRACKED (0x80)
192 #define STATE_SYSTEM_DEFAULT (0x100)
193 #define STATE_SYSTEM_EXPANDED (0x200)
194 #define STATE_SYSTEM_COLLAPSED (0x400)
195 #define STATE_SYSTEM_BUSY (0x800)
196 #define STATE_SYSTEM_FLOATING (0x1000)
197 #define STATE_SYSTEM_MARQUEED (0x2000)
198 #define STATE_SYSTEM_ANIMATED (0x4000)
199 #define STATE_SYSTEM_INVISIBLE (0x8000)
200 #define STATE_SYSTEM_OFFSCREEN (0x10000)
201 #define STATE_SYSTEM_SIZEABLE (0x20000)
202 #define STATE_SYSTEM_MOVEABLE (0x40000)
203 #define STATE_SYSTEM_SELFVOICING (0x80000)
204 #define STATE_SYSTEM_FOCUSABLE (0x100000)
205 #define STATE_SYSTEM_SELECTABLE (0x200000)
206 #define STATE_SYSTEM_LINKED (0x400000)
207 #define STATE_SYSTEM_TRAVERSED (0x800000)
208 #define STATE_SYSTEM_MULTISELECTABLE (0x1000000)
209 #define STATE_SYSTEM_EXTSELECTABLE (0x2000000)
210 #define STATE_SYSTEM_ALERT_LOW (0x4000000)
211 #define STATE_SYSTEM_ALERT_MEDIUM (0x8000000)
212 #define STATE_SYSTEM_ALERT_HIGH (0x10000000)
213 #define STATE_SYSTEM_PROTECTED (0x20000000)
214 #define STATE_SYSTEM_VALID (0x7fffffff)
215 #endif
216 
217 #ifndef STATE_SYSTEM_HASPOPUP
218 #define STATE_SYSTEM_HASPOPUP (0x40000000)
219 #endif
220 #define ROLE_SYSTEM_TITLEBAR (0x1)
221 #define ROLE_SYSTEM_MENUBAR (0x2)
222 #define ROLE_SYSTEM_SCROLLBAR (0x3)
223 #define ROLE_SYSTEM_GRIP (0x4)
224 #define ROLE_SYSTEM_SOUND (0x5)
225 #define ROLE_SYSTEM_CURSOR (0x6)
226 #define ROLE_SYSTEM_CARET (0x7)
227 #define ROLE_SYSTEM_ALERT (0x8)
228 #define ROLE_SYSTEM_WINDOW (0x9)
229 #define ROLE_SYSTEM_CLIENT (0xa)
230 #define ROLE_SYSTEM_MENUPOPUP (0xb)
231 #define ROLE_SYSTEM_MENUITEM (0xc)
232 #define ROLE_SYSTEM_TOOLTIP (0xd)
233 #define ROLE_SYSTEM_APPLICATION (0xe)
234 #define ROLE_SYSTEM_DOCUMENT (0xf)
235 #define ROLE_SYSTEM_PANE (0x10)
236 #define ROLE_SYSTEM_CHART (0x11)
237 #define ROLE_SYSTEM_DIALOG (0x12)
238 #define ROLE_SYSTEM_BORDER (0x13)
239 #define ROLE_SYSTEM_GROUPING (0x14)
240 #define ROLE_SYSTEM_SEPARATOR (0x15)
241 #define ROLE_SYSTEM_TOOLBAR (0x16)
242 #define ROLE_SYSTEM_STATUSBAR (0x17)
243 #define ROLE_SYSTEM_TABLE (0x18)
244 #define ROLE_SYSTEM_COLUMNHEADER (0x19)
245 #define ROLE_SYSTEM_ROWHEADER (0x1a)
246 #define ROLE_SYSTEM_COLUMN (0x1b)
247 #define ROLE_SYSTEM_ROW (0x1c)
248 #define ROLE_SYSTEM_CELL (0x1d)
249 #define ROLE_SYSTEM_LINK (0x1e)
250 #define ROLE_SYSTEM_HELPBALLOON (0x1f)
251 #define ROLE_SYSTEM_CHARACTER (0x20)
252 #define ROLE_SYSTEM_LIST (0x21)
253 #define ROLE_SYSTEM_LISTITEM (0x22)
254 #define ROLE_SYSTEM_OUTLINE (0x23)
255 #define ROLE_SYSTEM_OUTLINEITEM (0x24)
256 #define ROLE_SYSTEM_PAGETAB (0x25)
257 #define ROLE_SYSTEM_PROPERTYPAGE (0x26)
258 #define ROLE_SYSTEM_INDICATOR (0x27)
259 #define ROLE_SYSTEM_GRAPHIC (0x28)
260 #define ROLE_SYSTEM_STATICTEXT (0x29)
261 #define ROLE_SYSTEM_TEXT (0x2a)
262 #define ROLE_SYSTEM_PUSHBUTTON (0x2b)
263 #define ROLE_SYSTEM_CHECKBUTTON (0x2c)
264 #define ROLE_SYSTEM_RADIOBUTTON (0x2d)
265 #define ROLE_SYSTEM_COMBOBOX (0x2e)
266 #define ROLE_SYSTEM_DROPLIST (0x2f)
267 #define ROLE_SYSTEM_PROGRESSBAR (0x30)
268 #define ROLE_SYSTEM_DIAL (0x31)
269 #define ROLE_SYSTEM_HOTKEYFIELD (0x32)
270 #define ROLE_SYSTEM_SLIDER (0x33)
271 #define ROLE_SYSTEM_SPINBUTTON (0x34)
272 #define ROLE_SYSTEM_DIAGRAM (0x35)
273 #define ROLE_SYSTEM_ANIMATION (0x36)
274 #define ROLE_SYSTEM_EQUATION (0x37)
275 #define ROLE_SYSTEM_BUTTONDROPDOWN (0x38)
276 #define ROLE_SYSTEM_BUTTONMENU (0x39)
277 #define ROLE_SYSTEM_BUTTONDROPDOWNGRID (0x3a)
278 #define ROLE_SYSTEM_WHITESPACE (0x3b)
279 #define ROLE_SYSTEM_PAGETABLIST (0x3c)
280 #define ROLE_SYSTEM_CLOCK (0x3d)
281 #define ROLE_SYSTEM_SPLITBUTTON (0x3e)
282 #define ROLE_SYSTEM_IPADDRESS (0x3f)
283 #define ROLE_SYSTEM_OUTLINEBUTTON (0x40)
284 /*****************************************************************************
285  * IAccessible interface
286  */
287 #ifndef __IAccessible_INTERFACE_DEFINED__
288 #define __IAccessible_INTERFACE_DEFINED__
289 
290 typedef IAccessible *LPACCESSIBLE;
291 #define DISPID_ACC_PARENT (-5000)
292 
293 #define DISPID_ACC_CHILDCOUNT (-5001)
294 
295 #define DISPID_ACC_CHILD (-5002)
296 
297 #define DISPID_ACC_NAME (-5003)
298 
299 #define DISPID_ACC_VALUE (-5004)
300 
301 #define DISPID_ACC_DESCRIPTION (-5005)
302 
303 #define DISPID_ACC_ROLE (-5006)
304 
305 #define DISPID_ACC_STATE (-5007)
306 
307 #define DISPID_ACC_HELP (-5008)
308 
309 #define DISPID_ACC_HELPTOPIC (-5009)
310 
311 #define DISPID_ACC_KEYBOARDSHORTCUT (-5010)
312 
313 #define DISPID_ACC_FOCUS (-5011)
314 
315 #define DISPID_ACC_SELECTION (-5012)
316 
317 #define DISPID_ACC_DEFAULTACTION (-5013)
318 
319 #define DISPID_ACC_SELECT (-5014)
320 
321 #define DISPID_ACC_LOCATION (-5015)
322 
323 #define DISPID_ACC_NAVIGATE (-5016)
324 
325 #define DISPID_ACC_HITTEST (-5017)
326 
327 #define DISPID_ACC_DODEFAULTACTION (-5018)
328 
329 DEFINE_GUID(IID_IAccessible, 0x618736e0, 0x3c3d, 0x11cf, 0x81,0x0c, 0x00,0xaa,0x00,0x38,0x9b,0x71);
330 #if defined(__cplusplus) && !defined(CINTERFACE)
331 MIDL_INTERFACE("618736e0-3c3d-11cf-810c-00aa00389b71")
332 IAccessible : public IDispatch
333 {
334     virtual HRESULT STDMETHODCALLTYPE get_accParent(
335         IDispatch **ppdispParent) = 0;
336 
337     virtual HRESULT STDMETHODCALLTYPE get_accChildCount(
338         LONG *pcountChildren) = 0;
339 
340     virtual HRESULT STDMETHODCALLTYPE get_accChild(
341         VARIANT varChildID,
342         IDispatch **ppdispChild) = 0;
343 
344     virtual HRESULT STDMETHODCALLTYPE get_accName(
345         VARIANT varID,
346         BSTR *pszName) = 0;
347 
348     virtual HRESULT STDMETHODCALLTYPE get_accValue(
349         VARIANT varID,
350         BSTR *pszValue) = 0;
351 
352     virtual HRESULT STDMETHODCALLTYPE get_accDescription(
353         VARIANT varID,
354         BSTR *pszDescription) = 0;
355 
356     virtual HRESULT STDMETHODCALLTYPE get_accRole(
357         VARIANT varID,
358         VARIANT *pvarRole) = 0;
359 
360     virtual HRESULT STDMETHODCALLTYPE get_accState(
361         VARIANT varID,
362         VARIANT *pvarState) = 0;
363 
364     virtual HRESULT STDMETHODCALLTYPE get_accHelp(
365         VARIANT varID,
366         BSTR *pszHelp) = 0;
367 
368     virtual HRESULT STDMETHODCALLTYPE get_accHelpTopic(
369         BSTR *pszHelpFile,
370         VARIANT varID,
371         LONG *pidTopic) = 0;
372 
373     virtual HRESULT STDMETHODCALLTYPE get_accKeyboardShortcut(
374         VARIANT varID,
375         BSTR *pszKeyboardShortcut) = 0;
376 
377     virtual HRESULT STDMETHODCALLTYPE get_accFocus(
378         VARIANT *pvarID) = 0;
379 
380     virtual HRESULT STDMETHODCALLTYPE get_accSelection(
381         VARIANT *pvarID) = 0;
382 
383     virtual HRESULT STDMETHODCALLTYPE get_accDefaultAction(
384         VARIANT varID,
385         BSTR *pszDefaultAction) = 0;
386 
387     virtual HRESULT STDMETHODCALLTYPE accSelect(
388         LONG flagsSelect,
389         VARIANT varID) = 0;
390 
391     virtual HRESULT STDMETHODCALLTYPE accLocation(
392         LONG *pxLeft,
393         LONG *pyTop,
394         LONG *pcxWidth,
395         LONG *pcyHeight,
396         VARIANT varID) = 0;
397 
398     virtual HRESULT STDMETHODCALLTYPE accNavigate(
399         LONG navDir,
400         VARIANT varStart,
401         VARIANT *pvarEnd) = 0;
402 
403     virtual HRESULT STDMETHODCALLTYPE accHitTest(
404         LONG xLeft,
405         LONG yTop,
406         VARIANT *pvarID) = 0;
407 
408     virtual HRESULT STDMETHODCALLTYPE accDoDefaultAction(
409         VARIANT varID) = 0;
410 
411     virtual HRESULT STDMETHODCALLTYPE put_accName(
412         VARIANT varID,
413         BSTR pszName) = 0;
414 
415     virtual HRESULT STDMETHODCALLTYPE put_accValue(
416         VARIANT varID,
417         BSTR pszValue) = 0;
418 
419 };
420 #ifdef __CRT_UUID_DECL
421 __CRT_UUID_DECL(IAccessible, 0x618736e0, 0x3c3d, 0x11cf, 0x81,0x0c, 0x00,0xaa,0x00,0x38,0x9b,0x71)
422 #endif
423 #else
424 typedef struct IAccessibleVtbl {
425     BEGIN_INTERFACE
426 
427     /*** IUnknown methods ***/
428     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
429         IAccessible *This,
430         REFIID riid,
431         void **ppvObject);
432 
433     ULONG (STDMETHODCALLTYPE *AddRef)(
434         IAccessible *This);
435 
436     ULONG (STDMETHODCALLTYPE *Release)(
437         IAccessible *This);
438 
439     /*** IDispatch methods ***/
440     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
441         IAccessible *This,
442         UINT *pctinfo);
443 
444     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
445         IAccessible *This,
446         UINT iTInfo,
447         LCID lcid,
448         ITypeInfo **ppTInfo);
449 
450     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
451         IAccessible *This,
452         REFIID riid,
453         LPOLESTR *rgszNames,
454         UINT cNames,
455         LCID lcid,
456         DISPID *rgDispId);
457 
458     HRESULT (STDMETHODCALLTYPE *Invoke)(
459         IAccessible *This,
460         DISPID dispIdMember,
461         REFIID riid,
462         LCID lcid,
463         WORD wFlags,
464         DISPPARAMS *pDispParams,
465         VARIANT *pVarResult,
466         EXCEPINFO *pExcepInfo,
467         UINT *puArgErr);
468 
469     /*** IAccessible methods ***/
470     HRESULT (STDMETHODCALLTYPE *get_accParent)(
471         IAccessible *This,
472         IDispatch **ppdispParent);
473 
474     HRESULT (STDMETHODCALLTYPE *get_accChildCount)(
475         IAccessible *This,
476         LONG *pcountChildren);
477 
478     HRESULT (STDMETHODCALLTYPE *get_accChild)(
479         IAccessible *This,
480         VARIANT varChildID,
481         IDispatch **ppdispChild);
482 
483     HRESULT (STDMETHODCALLTYPE *get_accName)(
484         IAccessible *This,
485         VARIANT varID,
486         BSTR *pszName);
487 
488     HRESULT (STDMETHODCALLTYPE *get_accValue)(
489         IAccessible *This,
490         VARIANT varID,
491         BSTR *pszValue);
492 
493     HRESULT (STDMETHODCALLTYPE *get_accDescription)(
494         IAccessible *This,
495         VARIANT varID,
496         BSTR *pszDescription);
497 
498     HRESULT (STDMETHODCALLTYPE *get_accRole)(
499         IAccessible *This,
500         VARIANT varID,
501         VARIANT *pvarRole);
502 
503     HRESULT (STDMETHODCALLTYPE *get_accState)(
504         IAccessible *This,
505         VARIANT varID,
506         VARIANT *pvarState);
507 
508     HRESULT (STDMETHODCALLTYPE *get_accHelp)(
509         IAccessible *This,
510         VARIANT varID,
511         BSTR *pszHelp);
512 
513     HRESULT (STDMETHODCALLTYPE *get_accHelpTopic)(
514         IAccessible *This,
515         BSTR *pszHelpFile,
516         VARIANT varID,
517         LONG *pidTopic);
518 
519     HRESULT (STDMETHODCALLTYPE *get_accKeyboardShortcut)(
520         IAccessible *This,
521         VARIANT varID,
522         BSTR *pszKeyboardShortcut);
523 
524     HRESULT (STDMETHODCALLTYPE *get_accFocus)(
525         IAccessible *This,
526         VARIANT *pvarID);
527 
528     HRESULT (STDMETHODCALLTYPE *get_accSelection)(
529         IAccessible *This,
530         VARIANT *pvarID);
531 
532     HRESULT (STDMETHODCALLTYPE *get_accDefaultAction)(
533         IAccessible *This,
534         VARIANT varID,
535         BSTR *pszDefaultAction);
536 
537     HRESULT (STDMETHODCALLTYPE *accSelect)(
538         IAccessible *This,
539         LONG flagsSelect,
540         VARIANT varID);
541 
542     HRESULT (STDMETHODCALLTYPE *accLocation)(
543         IAccessible *This,
544         LONG *pxLeft,
545         LONG *pyTop,
546         LONG *pcxWidth,
547         LONG *pcyHeight,
548         VARIANT varID);
549 
550     HRESULT (STDMETHODCALLTYPE *accNavigate)(
551         IAccessible *This,
552         LONG navDir,
553         VARIANT varStart,
554         VARIANT *pvarEnd);
555 
556     HRESULT (STDMETHODCALLTYPE *accHitTest)(
557         IAccessible *This,
558         LONG xLeft,
559         LONG yTop,
560         VARIANT *pvarID);
561 
562     HRESULT (STDMETHODCALLTYPE *accDoDefaultAction)(
563         IAccessible *This,
564         VARIANT varID);
565 
566     HRESULT (STDMETHODCALLTYPE *put_accName)(
567         IAccessible *This,
568         VARIANT varID,
569         BSTR pszName);
570 
571     HRESULT (STDMETHODCALLTYPE *put_accValue)(
572         IAccessible *This,
573         VARIANT varID,
574         BSTR pszValue);
575 
576     END_INTERFACE
577 } IAccessibleVtbl;
578 
579 interface IAccessible {
580     CONST_VTBL IAccessibleVtbl* lpVtbl;
581 };
582 
583 #ifdef COBJMACROS
584 #ifndef WIDL_C_INLINE_WRAPPERS
585 /*** IUnknown methods ***/
586 #define IAccessible_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
587 #define IAccessible_AddRef(This) (This)->lpVtbl->AddRef(This)
588 #define IAccessible_Release(This) (This)->lpVtbl->Release(This)
589 /*** IDispatch methods ***/
590 #define IAccessible_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
591 #define IAccessible_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
592 #define IAccessible_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
593 #define IAccessible_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
594 /*** IAccessible methods ***/
595 #define IAccessible_get_accParent(This,ppdispParent) (This)->lpVtbl->get_accParent(This,ppdispParent)
596 #define IAccessible_get_accChildCount(This,pcountChildren) (This)->lpVtbl->get_accChildCount(This,pcountChildren)
597 #define IAccessible_get_accChild(This,varChildID,ppdispChild) (This)->lpVtbl->get_accChild(This,varChildID,ppdispChild)
598 #define IAccessible_get_accName(This,varID,pszName) (This)->lpVtbl->get_accName(This,varID,pszName)
599 #define IAccessible_get_accValue(This,varID,pszValue) (This)->lpVtbl->get_accValue(This,varID,pszValue)
600 #define IAccessible_get_accDescription(This,varID,pszDescription) (This)->lpVtbl->get_accDescription(This,varID,pszDescription)
601 #define IAccessible_get_accRole(This,varID,pvarRole) (This)->lpVtbl->get_accRole(This,varID,pvarRole)
602 #define IAccessible_get_accState(This,varID,pvarState) (This)->lpVtbl->get_accState(This,varID,pvarState)
603 #define IAccessible_get_accHelp(This,varID,pszHelp) (This)->lpVtbl->get_accHelp(This,varID,pszHelp)
604 #define IAccessible_get_accHelpTopic(This,pszHelpFile,varID,pidTopic) (This)->lpVtbl->get_accHelpTopic(This,pszHelpFile,varID,pidTopic)
605 #define IAccessible_get_accKeyboardShortcut(This,varID,pszKeyboardShortcut) (This)->lpVtbl->get_accKeyboardShortcut(This,varID,pszKeyboardShortcut)
606 #define IAccessible_get_accFocus(This,pvarID) (This)->lpVtbl->get_accFocus(This,pvarID)
607 #define IAccessible_get_accSelection(This,pvarID) (This)->lpVtbl->get_accSelection(This,pvarID)
608 #define IAccessible_get_accDefaultAction(This,varID,pszDefaultAction) (This)->lpVtbl->get_accDefaultAction(This,varID,pszDefaultAction)
609 #define IAccessible_accSelect(This,flagsSelect,varID) (This)->lpVtbl->accSelect(This,flagsSelect,varID)
610 #define IAccessible_accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID) (This)->lpVtbl->accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID)
611 #define IAccessible_accNavigate(This,navDir,varStart,pvarEnd) (This)->lpVtbl->accNavigate(This,navDir,varStart,pvarEnd)
612 #define IAccessible_accHitTest(This,xLeft,yTop,pvarID) (This)->lpVtbl->accHitTest(This,xLeft,yTop,pvarID)
613 #define IAccessible_accDoDefaultAction(This,varID) (This)->lpVtbl->accDoDefaultAction(This,varID)
614 #define IAccessible_put_accName(This,varID,pszName) (This)->lpVtbl->put_accName(This,varID,pszName)
615 #define IAccessible_put_accValue(This,varID,pszValue) (This)->lpVtbl->put_accValue(This,varID,pszValue)
616 #else
617 /*** IUnknown methods ***/
618 static FORCEINLINE HRESULT IAccessible_QueryInterface(IAccessible* This,REFIID riid,void **ppvObject) {
619     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
620 }
621 static FORCEINLINE ULONG IAccessible_AddRef(IAccessible* This) {
622     return This->lpVtbl->AddRef(This);
623 }
624 static FORCEINLINE ULONG IAccessible_Release(IAccessible* This) {
625     return This->lpVtbl->Release(This);
626 }
627 /*** IDispatch methods ***/
628 static FORCEINLINE HRESULT IAccessible_GetTypeInfoCount(IAccessible* This,UINT *pctinfo) {
629     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
630 }
631 static FORCEINLINE HRESULT IAccessible_GetTypeInfo(IAccessible* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
632     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
633 }
634 static FORCEINLINE HRESULT IAccessible_GetIDsOfNames(IAccessible* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
635     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
636 }
637 static FORCEINLINE HRESULT IAccessible_Invoke(IAccessible* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
638     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
639 }
640 /*** IAccessible methods ***/
641 static FORCEINLINE HRESULT IAccessible_get_accParent(IAccessible* This,IDispatch **ppdispParent) {
642     return This->lpVtbl->get_accParent(This,ppdispParent);
643 }
644 static FORCEINLINE HRESULT IAccessible_get_accChildCount(IAccessible* This,LONG *pcountChildren) {
645     return This->lpVtbl->get_accChildCount(This,pcountChildren);
646 }
647 static FORCEINLINE HRESULT IAccessible_get_accChild(IAccessible* This,VARIANT varChildID,IDispatch **ppdispChild) {
648     return This->lpVtbl->get_accChild(This,varChildID,ppdispChild);
649 }
650 static FORCEINLINE HRESULT IAccessible_get_accName(IAccessible* This,VARIANT varID,BSTR *pszName) {
651     return This->lpVtbl->get_accName(This,varID,pszName);
652 }
653 static FORCEINLINE HRESULT IAccessible_get_accValue(IAccessible* This,VARIANT varID,BSTR *pszValue) {
654     return This->lpVtbl->get_accValue(This,varID,pszValue);
655 }
656 static FORCEINLINE HRESULT IAccessible_get_accDescription(IAccessible* This,VARIANT varID,BSTR *pszDescription) {
657     return This->lpVtbl->get_accDescription(This,varID,pszDescription);
658 }
659 static FORCEINLINE HRESULT IAccessible_get_accRole(IAccessible* This,VARIANT varID,VARIANT *pvarRole) {
660     return This->lpVtbl->get_accRole(This,varID,pvarRole);
661 }
662 static FORCEINLINE HRESULT IAccessible_get_accState(IAccessible* This,VARIANT varID,VARIANT *pvarState) {
663     return This->lpVtbl->get_accState(This,varID,pvarState);
664 }
665 static FORCEINLINE HRESULT IAccessible_get_accHelp(IAccessible* This,VARIANT varID,BSTR *pszHelp) {
666     return This->lpVtbl->get_accHelp(This,varID,pszHelp);
667 }
668 static FORCEINLINE HRESULT IAccessible_get_accHelpTopic(IAccessible* This,BSTR *pszHelpFile,VARIANT varID,LONG *pidTopic) {
669     return This->lpVtbl->get_accHelpTopic(This,pszHelpFile,varID,pidTopic);
670 }
671 static FORCEINLINE HRESULT IAccessible_get_accKeyboardShortcut(IAccessible* This,VARIANT varID,BSTR *pszKeyboardShortcut) {
672     return This->lpVtbl->get_accKeyboardShortcut(This,varID,pszKeyboardShortcut);
673 }
674 static FORCEINLINE HRESULT IAccessible_get_accFocus(IAccessible* This,VARIANT *pvarID) {
675     return This->lpVtbl->get_accFocus(This,pvarID);
676 }
677 static FORCEINLINE HRESULT IAccessible_get_accSelection(IAccessible* This,VARIANT *pvarID) {
678     return This->lpVtbl->get_accSelection(This,pvarID);
679 }
680 static FORCEINLINE HRESULT IAccessible_get_accDefaultAction(IAccessible* This,VARIANT varID,BSTR *pszDefaultAction) {
681     return This->lpVtbl->get_accDefaultAction(This,varID,pszDefaultAction);
682 }
683 static FORCEINLINE HRESULT IAccessible_accSelect(IAccessible* This,LONG flagsSelect,VARIANT varID) {
684     return This->lpVtbl->accSelect(This,flagsSelect,varID);
685 }
686 static FORCEINLINE HRESULT IAccessible_accLocation(IAccessible* This,LONG *pxLeft,LONG *pyTop,LONG *pcxWidth,LONG *pcyHeight,VARIANT varID) {
687     return This->lpVtbl->accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID);
688 }
689 static FORCEINLINE HRESULT IAccessible_accNavigate(IAccessible* This,LONG navDir,VARIANT varStart,VARIANT *pvarEnd) {
690     return This->lpVtbl->accNavigate(This,navDir,varStart,pvarEnd);
691 }
692 static FORCEINLINE HRESULT IAccessible_accHitTest(IAccessible* This,LONG xLeft,LONG yTop,VARIANT *pvarID) {
693     return This->lpVtbl->accHitTest(This,xLeft,yTop,pvarID);
694 }
695 static FORCEINLINE HRESULT IAccessible_accDoDefaultAction(IAccessible* This,VARIANT varID) {
696     return This->lpVtbl->accDoDefaultAction(This,varID);
697 }
698 static FORCEINLINE HRESULT IAccessible_put_accName(IAccessible* This,VARIANT varID,BSTR pszName) {
699     return This->lpVtbl->put_accName(This,varID,pszName);
700 }
701 static FORCEINLINE HRESULT IAccessible_put_accValue(IAccessible* This,VARIANT varID,BSTR pszValue) {
702     return This->lpVtbl->put_accValue(This,varID,pszValue);
703 }
704 #endif
705 #endif
706 
707 #endif
708 
709 
710 #endif  /* __IAccessible_INTERFACE_DEFINED__ */
711 
712 #ifndef __IAccessibleHandler_INTERFACE_DEFINED__
713 #define __IAccessibleHandler_INTERFACE_DEFINED__
714   typedef IAccessibleHandler *LPACCESSIBLEHANDLER;
715 
716   EXTERN_C const IID IID_IAccessibleHandler;
717 #if defined(__cplusplus) && !defined(CINTERFACE)
718   struct IAccessibleHandler : public IUnknown {
719   public:
720     virtual HRESULT WINAPI AccessibleObjectFromID(LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible) = 0;
721   };
722 #else
723   typedef struct IAccessibleHandlerVtbl {
724     BEGIN_INTERFACE
725       HRESULT (WINAPI *QueryInterface)(IAccessibleHandler *This,REFIID riid,void **ppvObject);
726       ULONG (WINAPI *AddRef)(IAccessibleHandler *This);
727       ULONG (WINAPI *Release)(IAccessibleHandler *This);
728       HRESULT (WINAPI *AccessibleObjectFromID)(IAccessibleHandler *This,LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible);
729     END_INTERFACE
730   } IAccessibleHandlerVtbl;
731   struct IAccessibleHandler {
732     CONST_VTBL struct IAccessibleHandlerVtbl *lpVtbl;
733   };
734 #ifdef COBJMACROS
735 #define IAccessibleHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
736 #define IAccessibleHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
737 #define IAccessibleHandler_Release(This) (This)->lpVtbl->Release(This)
738 #define IAccessibleHandler_AccessibleObjectFromID(This,hwnd,lObjectID,pIAccessible) (This)->lpVtbl->AccessibleObjectFromID(This,hwnd,lObjectID,pIAccessible)
739 #endif
740 #endif
741   HRESULT WINAPI IAccessibleHandler_AccessibleObjectFromID_Proxy(IAccessibleHandler *This,LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible);
742   void __RPC_STUB IAccessibleHandler_AccessibleObjectFromID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
743 #endif
744 
745   typedef enum AnnoScope {
746     ANNO_THIS = 0,ANNO_CONTAINER = 1
747   } AnnoScope;
748 
749   typedef GUID MSAAPROPID;
750 
751   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0116_v0_0_c_ifspec;
752   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0116_v0_0_s_ifspec;
753 
754 #ifndef __IAccIdentity_INTERFACE_DEFINED__
755 #define __IAccIdentity_INTERFACE_DEFINED__
756   EXTERN_C const IID IID_IAccIdentity;
757 #if defined(__cplusplus) && !defined(CINTERFACE)
758   struct IAccIdentity : public IUnknown {
759   public:
760     virtual HRESULT WINAPI GetIdentityString(DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
761   };
762 #else
763   typedef struct IAccIdentityVtbl {
764     BEGIN_INTERFACE
765       HRESULT (WINAPI *QueryInterface)(IAccIdentity *This,REFIID riid,void **ppvObject);
766       ULONG (WINAPI *AddRef)(IAccIdentity *This);
767       ULONG (WINAPI *Release)(IAccIdentity *This);
768       HRESULT (WINAPI *GetIdentityString)(IAccIdentity *This,DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
769     END_INTERFACE
770   } IAccIdentityVtbl;
771   struct IAccIdentity {
772     CONST_VTBL struct IAccIdentityVtbl *lpVtbl;
773   };
774 #ifdef COBJMACROS
775 #define IAccIdentity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
776 #define IAccIdentity_AddRef(This) (This)->lpVtbl->AddRef(This)
777 #define IAccIdentity_Release(This) (This)->lpVtbl->Release(This)
778 #define IAccIdentity_GetIdentityString(This,dwIDChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->GetIdentityString(This,dwIDChild,ppIDString,pdwIDStringLen)
779 #endif
780 #endif
781   HRESULT WINAPI IAccIdentity_GetIdentityString_Proxy(IAccIdentity *This,DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
782   void __RPC_STUB IAccIdentity_GetIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
783 #endif
784 
785 #ifndef __IAccPropServer_INTERFACE_DEFINED__
786 #define __IAccPropServer_INTERFACE_DEFINED__
787   EXTERN_C const IID IID_IAccPropServer;
788 #if defined(__cplusplus) && !defined(CINTERFACE)
789   struct IAccPropServer : public IUnknown {
790   public:
791     virtual HRESULT WINAPI GetPropValue(const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp) = 0;
792   };
793 #else
794   typedef struct IAccPropServerVtbl {
795     BEGIN_INTERFACE
796       HRESULT (WINAPI *QueryInterface)(IAccPropServer *This,REFIID riid,void **ppvObject);
797       ULONG (WINAPI *AddRef)(IAccPropServer *This);
798       ULONG (WINAPI *Release)(IAccPropServer *This);
799       HRESULT (WINAPI *GetPropValue)(IAccPropServer *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp);
800     END_INTERFACE
801   } IAccPropServerVtbl;
802   struct IAccPropServer {
803     CONST_VTBL struct IAccPropServerVtbl *lpVtbl;
804   };
805 #ifdef COBJMACROS
806 #define IAccPropServer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
807 #define IAccPropServer_AddRef(This) (This)->lpVtbl->AddRef(This)
808 #define IAccPropServer_Release(This) (This)->lpVtbl->Release(This)
809 #define IAccPropServer_GetPropValue(This,pIDString,dwIDStringLen,idProp,pvarValue,pfHasProp) (This)->lpVtbl->GetPropValue(This,pIDString,dwIDStringLen,idProp,pvarValue,pfHasProp)
810 #endif
811 #endif
812   HRESULT WINAPI IAccPropServer_GetPropValue_Proxy(IAccPropServer *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp);
813   void __RPC_STUB IAccPropServer_GetPropValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
814 #endif
815 
816 #ifndef __IAccPropServices_INTERFACE_DEFINED__
817 #define __IAccPropServices_INTERFACE_DEFINED__
818   EXTERN_C const IID IID_IAccPropServices;
819 #if defined(__cplusplus) && !defined(CINTERFACE)
820   struct IAccPropServices : public IUnknown {
821   public:
822     virtual HRESULT WINAPI SetPropValue(const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var) = 0;
823     virtual HRESULT WINAPI SetPropServer(const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
824     virtual HRESULT WINAPI ClearProps(const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps) = 0;
825     virtual HRESULT WINAPI SetHwndProp(HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var) = 0;
826     virtual HRESULT WINAPI SetHwndPropStr(HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str) = 0;
827     virtual HRESULT WINAPI SetHwndPropServer(HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
828     virtual HRESULT WINAPI ClearHwndProps(HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps) = 0;
829     virtual HRESULT WINAPI ComposeHwndIdentityString(HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
830     virtual HRESULT WINAPI DecomposeHwndIdentityString(const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild) = 0;
831     virtual HRESULT WINAPI SetHmenuProp(HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var) = 0;
832     virtual HRESULT WINAPI SetHmenuPropStr(HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str) = 0;
833     virtual HRESULT WINAPI SetHmenuPropServer(HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
834     virtual HRESULT WINAPI ClearHmenuProps(HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps) = 0;
835     virtual HRESULT WINAPI ComposeHmenuIdentityString(HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
836     virtual HRESULT WINAPI DecomposeHmenuIdentityString(const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild) = 0;
837   };
838 #else
839   typedef struct IAccPropServicesVtbl {
840     BEGIN_INTERFACE
841       HRESULT (WINAPI *QueryInterface)(IAccPropServices *This,REFIID riid,void **ppvObject);
842       ULONG (WINAPI *AddRef)(IAccPropServices *This);
843       ULONG (WINAPI *Release)(IAccPropServices *This);
844       HRESULT (WINAPI *SetPropValue)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var);
845       HRESULT (WINAPI *SetPropServer)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
846       HRESULT (WINAPI *ClearProps)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps);
847       HRESULT (WINAPI *SetHwndProp)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var);
848       HRESULT (WINAPI *SetHwndPropStr)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
849       HRESULT (WINAPI *SetHwndPropServer)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
850       HRESULT (WINAPI *ClearHwndProps)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps);
851       HRESULT (WINAPI *ComposeHwndIdentityString)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
852       HRESULT (WINAPI *DecomposeHwndIdentityString)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild);
853       HRESULT (WINAPI *SetHmenuProp)(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var);
854       HRESULT (WINAPI *SetHmenuPropStr)(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
855       HRESULT (WINAPI *SetHmenuPropServer)(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
856       HRESULT (WINAPI *ClearHmenuProps)(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps);
857       HRESULT (WINAPI *ComposeHmenuIdentityString)(IAccPropServices *This,HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
858       HRESULT (WINAPI *DecomposeHmenuIdentityString)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild);
859     END_INTERFACE
860   } IAccPropServicesVtbl;
861   struct IAccPropServices {
862     CONST_VTBL struct IAccPropServicesVtbl *lpVtbl;
863   };
864 #ifdef COBJMACROS
865 #define IAccPropServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
866 #define IAccPropServices_AddRef(This) (This)->lpVtbl->AddRef(This)
867 #define IAccPropServices_Release(This) (This)->lpVtbl->Release(This)
868 #define IAccPropServices_SetPropValue(This,pIDString,dwIDStringLen,idProp,var) (This)->lpVtbl->SetPropValue(This,pIDString,dwIDStringLen,idProp,var)
869 #define IAccPropServices_SetPropServer(This,pIDString,dwIDStringLen,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetPropServer(This,pIDString,dwIDStringLen,paProps,cProps,pServer,annoScope)
870 #define IAccPropServices_ClearProps(This,pIDString,dwIDStringLen,paProps,cProps) (This)->lpVtbl->ClearProps(This,pIDString,dwIDStringLen,paProps,cProps)
871 #define IAccPropServices_SetHwndProp(This,hwnd,idObject,idChild,idProp,var) (This)->lpVtbl->SetHwndProp(This,hwnd,idObject,idChild,idProp,var)
872 #define IAccPropServices_SetHwndPropStr(This,hwnd,idObject,idChild,idProp,str) (This)->lpVtbl->SetHwndPropStr(This,hwnd,idObject,idChild,idProp,str)
873 #define IAccPropServices_SetHwndPropServer(This,hwnd,idObject,idChild,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetHwndPropServer(This,hwnd,idObject,idChild,paProps,cProps,pServer,annoScope)
874 #define IAccPropServices_ClearHwndProps(This,hwnd,idObject,idChild,paProps,cProps) (This)->lpVtbl->ClearHwndProps(This,hwnd,idObject,idChild,paProps,cProps)
875 #define IAccPropServices_ComposeHwndIdentityString(This,hwnd,idObject,idChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->ComposeHwndIdentityString(This,hwnd,idObject,idChild,ppIDString,pdwIDStringLen)
876 #define IAccPropServices_DecomposeHwndIdentityString(This,pIDString,dwIDStringLen,phwnd,pidObject,pidChild) (This)->lpVtbl->DecomposeHwndIdentityString(This,pIDString,dwIDStringLen,phwnd,pidObject,pidChild)
877 #define IAccPropServices_SetHmenuProp(This,hmenu,idChild,idProp,var) (This)->lpVtbl->SetHmenuProp(This,hmenu,idChild,idProp,var)
878 #define IAccPropServices_SetHmenuPropStr(This,hmenu,idChild,idProp,str) (This)->lpVtbl->SetHmenuPropStr(This,hmenu,idChild,idProp,str)
879 #define IAccPropServices_SetHmenuPropServer(This,hmenu,idChild,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetHmenuPropServer(This,hmenu,idChild,paProps,cProps,pServer,annoScope)
880 #define IAccPropServices_ClearHmenuProps(This,hmenu,idChild,paProps,cProps) (This)->lpVtbl->ClearHmenuProps(This,hmenu,idChild,paProps,cProps)
881 #define IAccPropServices_ComposeHmenuIdentityString(This,hmenu,idChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->ComposeHmenuIdentityString(This,hmenu,idChild,ppIDString,pdwIDStringLen)
882 #define IAccPropServices_DecomposeHmenuIdentityString(This,pIDString,dwIDStringLen,phmenu,pidChild) (This)->lpVtbl->DecomposeHmenuIdentityString(This,pIDString,dwIDStringLen,phmenu,pidChild)
883 #endif
884 #endif
885   HRESULT WINAPI IAccPropServices_SetPropValue_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var);
886   void __RPC_STUB IAccPropServices_SetPropValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
887   HRESULT WINAPI IAccPropServices_SetPropServer_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
888   void __RPC_STUB IAccPropServices_SetPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
889   HRESULT WINAPI IAccPropServices_ClearProps_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps);
890   void __RPC_STUB IAccPropServices_ClearProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
891   HRESULT WINAPI IAccPropServices_SetHwndProp_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var);
892   void __RPC_STUB IAccPropServices_SetHwndProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
893   HRESULT WINAPI IAccPropServices_SetHwndPropStr_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
894   void __RPC_STUB IAccPropServices_SetHwndPropStr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
895   HRESULT WINAPI IAccPropServices_SetHwndPropServer_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
896   void __RPC_STUB IAccPropServices_SetHwndPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
897   HRESULT WINAPI IAccPropServices_ClearHwndProps_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps);
898   void __RPC_STUB IAccPropServices_ClearHwndProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
899   HRESULT WINAPI IAccPropServices_ComposeHwndIdentityString_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
900   void __RPC_STUB IAccPropServices_ComposeHwndIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
901   HRESULT WINAPI IAccPropServices_DecomposeHwndIdentityString_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild);
902   void __RPC_STUB IAccPropServices_DecomposeHwndIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
903   HRESULT WINAPI IAccPropServices_SetHmenuProp_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var);
904   void __RPC_STUB IAccPropServices_SetHmenuProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
905   HRESULT WINAPI IAccPropServices_SetHmenuPropStr_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
906   void __RPC_STUB IAccPropServices_SetHmenuPropStr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
907   HRESULT WINAPI IAccPropServices_SetHmenuPropServer_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
908   void __RPC_STUB IAccPropServices_SetHmenuPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
909   HRESULT WINAPI IAccPropServices_ClearHmenuProps_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps);
910   void __RPC_STUB IAccPropServices_ClearHmenuProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
911   HRESULT WINAPI IAccPropServices_ComposeHmenuIdentityString_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
912   void __RPC_STUB IAccPropServices_ComposeHmenuIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
913   HRESULT WINAPI IAccPropServices_DecomposeHmenuIdentityString_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild);
914   void __RPC_STUB IAccPropServices_DecomposeHmenuIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
915 #endif
916 
917   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0119_v0_0_c_ifspec;
918   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0119_v0_0_s_ifspec;
919 #ifndef __Accessibility_LIBRARY_DEFINED__
920 #define __Accessibility_LIBRARY_DEFINED__
921   EXTERN_C const IID LIBID_Accessibility;
922   EXTERN_C const CLSID CLSID_CAccPropServices;
923 #ifdef __cplusplus
924   class CAccPropServices;
925 #endif
926 #endif
927 
928   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
929   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
930   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
931   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
932   ULONG __RPC_API HMENU_UserSize(ULONG *,ULONG,HMENU *);
933   unsigned char *__RPC_API HMENU_UserMarshal(ULONG *,unsigned char *,HMENU *);
934   unsigned char *__RPC_API HMENU_UserUnmarshal(ULONG *,unsigned char *,HMENU *);
935   void __RPC_API HMENU_UserFree(ULONG *,HMENU *);
936   ULONG __RPC_API HWND_UserSize(ULONG *,ULONG,HWND *);
937   unsigned char *__RPC_API HWND_UserMarshal(ULONG *,unsigned char *,HWND *);
938   unsigned char *__RPC_API HWND_UserUnmarshal(ULONG *,unsigned char *,HWND *);
939   void __RPC_API HWND_UserFree(ULONG *,HWND *);
940   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
941   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
942   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
943   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
944 /* Begin additional prototypes for all interfaces */
945 
946 
947 /* End additional prototypes */
948 
949 #ifdef __cplusplus
950 }
951 #endif
952 
953 #endif /* __oleacc_h__ */
954