headers: Update to Wine master

'include/windows.foundation.collections.idl' contains an error at the
moment, so I have restored it by hand.

Signed-off-by: LIU Hao <lh_mouse@126.com>
This commit is contained in:
LIU Hao 2021-11-24 14:00:04 +08:00
parent 3cf799a0a4
commit b628bd605d
5 changed files with 698 additions and 3 deletions

View File

@ -0,0 +1,64 @@
/*
* Copyright 2016 Nikolay Sivov for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_FONTSUB_H
#define __WINE_FONTSUB_H
#ifdef __cplusplus
extern "C" {
#endif
typedef void *(__cdecl *CFP_ALLOCPROC)(size_t);
typedef void *(__cdecl *CFP_REALLOCPROC)(void *, size_t);
typedef void (__cdecl *CFP_FREEPROC)(void *);
#define TTFCFP_SUBSET 0
#define TTFCFP_SUBSET1 1
#define TTFCFP_DELTA 2
#define TTFCFP_UNICODE_PLATFORMID 0
#define TTFCFP_APPLE_PLATFORMID 1
#define TTFCFP_ISO_PLATFORMID 2
#define TTFCFP_MS_PLATFORMID 3
#define TTFCFP_STD_MAC_CHAR_SET 0
#define TTFCFP_SYMBOL_CHAR_SET 0
#define TTFCFP_UNICODE_CHAR_SET 1
#define TTFCFP_DONT_CARE 0xffff
#define TTFCFP_LANG_KEEP_ALL 0
#define TTFCFP_FLAGS_SUBSET 0x0001
#define TTFCFP_FLAGS_COMPRESS 0x0002
#define TTFCFP_FLAGS_TTC 0x0004
#define TTFCFP_FLAGS_GLYPHLIST 0x0008
#define ERR_GENERIC 1000
#define ERR_MEM 1005
ULONG __cdecl CreateFontPackage(const unsigned char *src, const ULONG src_len, unsigned char **dest,
ULONG *dest_len, ULONG *written, const unsigned short flags, const unsigned short face_index,
const unsigned short format, const unsigned short lang, const unsigned short platform,
const unsigned short encoding, const unsigned short *keep_list, const unsigned short keep_len,
CFP_ALLOCPROC allocproc, CFP_REALLOCPROC reallocproc, CFP_FREEPROC freeproc, void *reserved);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -31,6 +31,74 @@ extern "C" {
DEFINE_GUID(LIBID_UIAutomationClient, 0x944de083, 0x8fb8, 0x45cf, 0xbc,0xb7, 0xc4,0x77,0xac,0xb2,0xf8,0x97);
#define UIA_InvokePatternId (10000)
#define UIA_SelectionPatternId (10001)
#define UIA_ValuePatternId (10002)
#define UIA_RangeValuePatternId (10003)
#define UIA_ScrollPatternId (10004)
#define UIA_ExpandCollapsePatternId (10005)
#define UIA_GridPatternId (10006)
#define UIA_GridItemPatternId (10007)
#define UIA_MultipleViewPatternId (10008)
#define UIA_WindowPatternId (10009)
#define UIA_SelectionItemPatternId (10010)
#define UIA_DockPatternId (10011)
#define UIA_TablePatternId (10012)
#define UIA_TableItemPatternId (10013)
#define UIA_TextPatternId (10014)
#define UIA_TogglePatternId (10015)
#define UIA_TransformPatternId (10016)
#define UIA_ScrollItemPatternId (10017)
#define UIA_LegacyIAccessiblePatternId (10018)
#define UIA_ItemContainerPatternId (10019)
#define UIA_VirtualizedItemPatternId (10020)
#define UIA_SynchronizedInputPatternId (10021)
#define UIA_ObjectModelPatternId (10022)
#define UIA_AnnotationPatternId (10023)
#define UIA_TextPattern2Id (10024)
#define UIA_StylesPatternId (10025)
#define UIA_SpreadsheetPatternId (10026)
#define UIA_SpreadsheetItemPatternId (10027)
#define UIA_TransformPattern2Id (10028)
#define UIA_TextChildPatternId (10029)
#define UIA_DragPatternId (10030)
#define UIA_DropTargetPatternId (10031)
#define UIA_TextEditPatternId (10032)
#define UIA_CustomNavigationPatternId (10033)
#define UIA_RuntimeIdPropertyId (30000)
#define UIA_BoundingRectanglePropertyId (30001)
@ -253,6 +321,134 @@ DEFINE_GUID(LIBID_UIAutomationClient, 0x944de083, 0x8fb8, 0x45cf, 0xbc,0xb7, 0xc
#define UIA_IsSynchronizedInputPatternAvailablePropertyId (30110)
#define UIA_OptimizeForVisualContentPropertyId (30111)
#define UIA_IsObjectModelPatternAvailablePropertyId (30112)
#define UIA_AnnotationAnnotationTypeIdPropertyId (30113)
#define UIA_AnnotationAnnotationTypeNamePropertyId (30114)
#define UIA_AnnotationAuthorPropertyId (30115)
#define UIA_AnnotationDateTimePropertyId (30116)
#define UIA_AnnotationTargetPropertyId (30117)
#define UIA_IsAnnotationPatternAvailablePropertyId (30118)
#define UIA_IsTextPattern2AvailablePropertyId (30119)
#define UIA_StylesStyleIdPropertyId (30120)
#define UIA_StylesStyleNamePropertyId (30121)
#define UIA_StylesFillColorPropertyId (30122)
#define UIA_StylesFillPatternStylePropertyId (30123)
#define UIA_StylesShapePropertyId (30124)
#define UIA_StylesFillPatternColorPropertyId (30125)
#define UIA_StylesExtendedPropertiesPropertyId (30126)
#define UIA_IsStylesPatternAvailablePropertyId (30127)
#define UIA_IsSpreadsheetPatternAvailablePropertyId (30128)
#define UIA_SpreadsheetItemFormulaPropertyId (30129)
#define UIA_SpreadsheetItemAnnotationObjectsPropertyId (30130)
#define UIA_SpreadsheetItemAnnotationTypesPropertyId (30131)
#define UIA_IsSpreadsheetItemPatternAvailablePropertyId (30132)
#define UIA_Transform2CanZoomPropertyId (30133)
#define UIA_IsTransformPattern2AvailablePropertyId (30134)
#define UIA_LiveSettingPropertyId (30135)
#define UIA_IsTextChildPatternAvailablePropertyId (30136)
#define UIA_IsDragPatternAvailablePropertyId (30137)
#define UIA_DragIsGrabbedPropertyId (30138)
#define UIA_DragDropEffectPropertyId (30139)
#define UIA_DragDropEffectsPropertyId (30140)
#define UIA_IsDropTargetPatternAvailablePropertyId (30141)
#define UIA_DropTargetDropTargetEffectPropertyId (30142)
#define UIA_DropTargetDropTargetEffectsPropertyId (30143)
#define UIA_DragGrabbedItemsPropertyId (30144)
#define UIA_Transform2ZoomLevelPropertyId (30145)
#define UIA_Transform2ZoomMinimumPropertyId (30146)
#define UIA_Transform2ZoomMaximumPropertyId (30147)
#define UIA_FlowsFromPropertyId (30148)
#define UIA_IsTextEditPatternAvailablePropertyId (30149)
#define UIA_IsPeripheralPropertyId (30150)
#define UIA_IsCustomNavigationPatternAvailablePropertyId (30151)
#define UIA_PositionInSetPropertyId (30152)
#define UIA_SizeOfSetPropertyId (30153)
#define UIA_LevelPropertyId (30154)
#define UIA_AnnotationTypesPropertyId (30155)
#define UIA_AnnotationObjectsPropertyId (30156)
#define UIA_LandmarkTypePropertyId (30157)
#define UIA_LocalizedLandmarkTypePropertyId (30158)
#define UIA_FullDescriptionPropertyId (30159)
#define UIA_FillColorPropertyId (30160)
#define UIA_OutlineColorPropertyId (30161)
#define UIA_FillTypePropertyId (30162)
#define UIA_VisualEffectsPropertyId (30163)
#define UIA_OutlineThicknessPropertyId (30164)
#define UIA_CenterPointPropertyId (30165)
#define UIA_RotationPropertyId (30166)
#define UIA_SizePropertyId (30167)
#define UIA_IsSelectionPattern2AvailablePropertyId (30168)
#define UIA_Selection2FirstSelectedItemPropertyId (30169)
#define UIA_Selection2LastSelectedItemPropertyId (30170)
#define UIA_Selection2CurrentSelectedItemPropertyId (30171)
#define UIA_Selection2ItemCountPropertyId (30172)
#define UIA_HeadingLevelPropertyId (30173)
#define UIA_IsDialogPropertyId (30174)
#endif /* __UIAutomationClient_LIBRARY_DEFINED__ */
/* Begin additional prototypes for all interfaces */

View File

@ -27,6 +27,49 @@ import "uiautomationcore.idl";
library UIAutomationClient {
importlib ("stdole2.tlb");
/* FIXME: Uncomment when properly supported in widl
[dllname("<no entry points>")]
module UIA_PatternIds
{
*/
const long UIA_InvokePatternId = 10000;
const long UIA_SelectionPatternId = 10001;
const long UIA_ValuePatternId = 10002;
const long UIA_RangeValuePatternId = 10003;
const long UIA_ScrollPatternId = 10004;
const long UIA_ExpandCollapsePatternId = 10005;
const long UIA_GridPatternId = 10006;
const long UIA_GridItemPatternId = 10007;
const long UIA_MultipleViewPatternId = 10008;
const long UIA_WindowPatternId = 10009;
const long UIA_SelectionItemPatternId = 10010;
const long UIA_DockPatternId = 10011;
const long UIA_TablePatternId = 10012;
const long UIA_TableItemPatternId = 10013;
const long UIA_TextPatternId = 10014;
const long UIA_TogglePatternId = 10015;
const long UIA_TransformPatternId = 10016;
const long UIA_ScrollItemPatternId = 10017;
const long UIA_LegacyIAccessiblePatternId = 10018;
const long UIA_ItemContainerPatternId = 10019;
const long UIA_VirtualizedItemPatternId = 10020;
const long UIA_SynchronizedInputPatternId = 10021;
const long UIA_ObjectModelPatternId = 10022;
const long UIA_AnnotationPatternId = 10023;
const long UIA_TextPattern2Id = 10024;
const long UIA_StylesPatternId = 10025;
const long UIA_SpreadsheetPatternId = 10026;
const long UIA_SpreadsheetItemPatternId = 10027;
const long UIA_TransformPattern2Id = 10028;
const long UIA_TextChildPatternId = 10029;
const long UIA_DragPatternId = 10030;
const long UIA_DropTargetPatternId = 10031;
const long UIA_TextEditPatternId = 10032;
const long UIA_CustomNavigationPatternId = 10033;
/*
}
*/
/* FIXME: Uncomment when properly supported in widl
[dllname("<no entry points>")]
module UIA_PropertyIds
@ -143,6 +186,70 @@ library UIAutomationClient {
const long UIA_IsItemContainerPatternAvailablePropertyId = 30108;
const long UIA_IsVirtualizedItemPatternAvailablePropertyId = 30109;
const long UIA_IsSynchronizedInputPatternAvailablePropertyId = 30110;
const long UIA_OptimizeForVisualContentPropertyId = 30111;
const long UIA_IsObjectModelPatternAvailablePropertyId = 30112;
const long UIA_AnnotationAnnotationTypeIdPropertyId = 30113;
const long UIA_AnnotationAnnotationTypeNamePropertyId = 30114;
const long UIA_AnnotationAuthorPropertyId = 30115;
const long UIA_AnnotationDateTimePropertyId = 30116;
const long UIA_AnnotationTargetPropertyId = 30117;
const long UIA_IsAnnotationPatternAvailablePropertyId = 30118;
const long UIA_IsTextPattern2AvailablePropertyId = 30119;
const long UIA_StylesStyleIdPropertyId = 30120;
const long UIA_StylesStyleNamePropertyId = 30121;
const long UIA_StylesFillColorPropertyId = 30122;
const long UIA_StylesFillPatternStylePropertyId = 30123;
const long UIA_StylesShapePropertyId = 30124;
const long UIA_StylesFillPatternColorPropertyId = 30125;
const long UIA_StylesExtendedPropertiesPropertyId = 30126;
const long UIA_IsStylesPatternAvailablePropertyId = 30127;
const long UIA_IsSpreadsheetPatternAvailablePropertyId = 30128;
const long UIA_SpreadsheetItemFormulaPropertyId = 30129;
const long UIA_SpreadsheetItemAnnotationObjectsPropertyId = 30130;
const long UIA_SpreadsheetItemAnnotationTypesPropertyId = 30131;
const long UIA_IsSpreadsheetItemPatternAvailablePropertyId = 30132;
const long UIA_Transform2CanZoomPropertyId = 30133;
const long UIA_IsTransformPattern2AvailablePropertyId = 30134;
const long UIA_LiveSettingPropertyId = 30135;
const long UIA_IsTextChildPatternAvailablePropertyId = 30136;
const long UIA_IsDragPatternAvailablePropertyId = 30137;
const long UIA_DragIsGrabbedPropertyId = 30138;
const long UIA_DragDropEffectPropertyId = 30139;
const long UIA_DragDropEffectsPropertyId = 30140;
const long UIA_IsDropTargetPatternAvailablePropertyId = 30141;
const long UIA_DropTargetDropTargetEffectPropertyId = 30142;
const long UIA_DropTargetDropTargetEffectsPropertyId = 30143;
const long UIA_DragGrabbedItemsPropertyId = 30144;
const long UIA_Transform2ZoomLevelPropertyId = 30145;
const long UIA_Transform2ZoomMinimumPropertyId = 30146;
const long UIA_Transform2ZoomMaximumPropertyId = 30147;
const long UIA_FlowsFromPropertyId = 30148;
const long UIA_IsTextEditPatternAvailablePropertyId = 30149;
const long UIA_IsPeripheralPropertyId = 30150;
const long UIA_IsCustomNavigationPatternAvailablePropertyId = 30151;
const long UIA_PositionInSetPropertyId = 30152;
const long UIA_SizeOfSetPropertyId = 30153;
const long UIA_LevelPropertyId = 30154;
const long UIA_AnnotationTypesPropertyId = 30155;
const long UIA_AnnotationObjectsPropertyId = 30156;
const long UIA_LandmarkTypePropertyId = 30157;
const long UIA_LocalizedLandmarkTypePropertyId = 30158;
const long UIA_FullDescriptionPropertyId = 30159;
const long UIA_FillColorPropertyId = 30160;
const long UIA_OutlineColorPropertyId = 30161;
const long UIA_FillTypePropertyId = 30162;
const long UIA_VisualEffectsPropertyId = 30163;
const long UIA_OutlineThicknessPropertyId = 30164;
const long UIA_CenterPointPropertyId = 30165;
const long UIA_RotationPropertyId = 30166;
const long UIA_SizePropertyId = 30167;
const long UIA_IsSelectionPattern2AvailablePropertyId = 30168;
const long UIA_Selection2FirstSelectedItemPropertyId = 30169;
const long UIA_Selection2LastSelectedItemPropertyId = 30170;
const long UIA_Selection2CurrentSelectedItemPropertyId = 30171;
const long UIA_Selection2ItemCountPropertyId = 30172;
const long UIA_HeadingLevelPropertyId = 30173;
const long UIA_IsDialogPropertyId = 30174;
/*
}
*/

View File

@ -34,6 +34,22 @@ interface IAccessibleEx;
#endif /* __cplusplus */
#endif
#ifndef __IRawElementProviderFragment_FWD_DEFINED__
#define __IRawElementProviderFragment_FWD_DEFINED__
typedef interface IRawElementProviderFragment IRawElementProviderFragment;
#ifdef __cplusplus
interface IRawElementProviderFragment;
#endif /* __cplusplus */
#endif
#ifndef __IRawElementProviderFragmentRoot_FWD_DEFINED__
#define __IRawElementProviderFragmentRoot_FWD_DEFINED__
typedef interface IRawElementProviderFragmentRoot IRawElementProviderFragmentRoot;
#ifdef __cplusplus
interface IRawElementProviderFragmentRoot;
#endif /* __cplusplus */
#endif
/* Headers for imported files */
#include <oaidl.h>
@ -43,19 +59,35 @@ interface IAccessibleEx;
extern "C" {
#endif
enum NavigateDirection {
NavigateDirection_Parent = 0x0,
NavigateDirection_NextSibling = 0x1,
NavigateDirection_PreviousSibling = 0x2,
NavigateDirection_FirstChild = 0x3,
NavigateDirection_LastChild = 0x4
};
enum ProviderOptions {
ProviderOptions_ClientSideProvider = 0x1,
ProviderOptions_ServerSideProvider = 0x2,
ProviderOptions_NonClientAreaProvider = 0x4,
ProviderOptions_OverrideProvider = 0x8,
ProviderOptions_ProviderOwnsSetFocus = 0x10,
ProviderOptions_UseComThreading = 0x20
ProviderOptions_UseComThreading = 0x20,
ProviderOptions_RefuseNonClientSupport = 0x40,
ProviderOptions_HasNativeIAccessible = 0x80,
ProviderOptions_UseClientCoordinates = 0x100
};
typedef int PROPERTYID;
typedef int PATTERNID;
typedef int EVENTID;
typedef int TEXTATTRIBUTEID;
typedef int CONTROLTYPEID;
struct UiaRect {
double left;
double top;
double width;
double height;
};
#ifndef __UIA_LIBRARY_DEFINED__
#define __UIA_LIBRARY_DEFINED__
@ -291,6 +323,239 @@ static FORCEINLINE HRESULT IAccessibleEx_ConvertReturnedElement(IAccessibleEx* T
#endif /* __IAccessibleEx_INTERFACE_DEFINED__ */
#ifndef __IRawElementProviderFragmentRoot_FWD_DEFINED__
#define __IRawElementProviderFragmentRoot_FWD_DEFINED__
typedef interface IRawElementProviderFragmentRoot IRawElementProviderFragmentRoot;
#ifdef __cplusplus
interface IRawElementProviderFragmentRoot;
#endif /* __cplusplus */
#endif
/*****************************************************************************
* IRawElementProviderFragment interface
*/
#ifndef __IRawElementProviderFragment_INTERFACE_DEFINED__
#define __IRawElementProviderFragment_INTERFACE_DEFINED__
DEFINE_GUID(IID_IRawElementProviderFragment, 0xf7063da8, 0x8359, 0x439c, 0x92,0x97, 0xbb,0xc5,0x29,0x9a,0x7d,0x87);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("f7063da8-8359-439c-9297-bbc5299a7d87")
IRawElementProviderFragment : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE Navigate(
enum NavigateDirection direction,
IRawElementProviderFragment **pRetVal) = 0;
virtual HRESULT STDMETHODCALLTYPE GetRuntimeId(
SAFEARRAY **pRetVal) = 0;
virtual HRESULT STDMETHODCALLTYPE get_BoundingRectangle(
struct UiaRect *pRetVal) = 0;
virtual HRESULT STDMETHODCALLTYPE GetEmbeddedFragmentRoots(
SAFEARRAY **pRetVal) = 0;
virtual HRESULT STDMETHODCALLTYPE SetFocus(
) = 0;
virtual HRESULT STDMETHODCALLTYPE get_FragmentRoot(
IRawElementProviderFragmentRoot **pRetVal) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IRawElementProviderFragment, 0xf7063da8, 0x8359, 0x439c, 0x92,0x97, 0xbb,0xc5,0x29,0x9a,0x7d,0x87)
#endif
#else
typedef struct IRawElementProviderFragmentVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IRawElementProviderFragment *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IRawElementProviderFragment *This);
ULONG (STDMETHODCALLTYPE *Release)(
IRawElementProviderFragment *This);
/*** IRawElementProviderFragment methods ***/
HRESULT (STDMETHODCALLTYPE *Navigate)(
IRawElementProviderFragment *This,
enum NavigateDirection direction,
IRawElementProviderFragment **pRetVal);
HRESULT (STDMETHODCALLTYPE *GetRuntimeId)(
IRawElementProviderFragment *This,
SAFEARRAY **pRetVal);
HRESULT (STDMETHODCALLTYPE *get_BoundingRectangle)(
IRawElementProviderFragment *This,
struct UiaRect *pRetVal);
HRESULT (STDMETHODCALLTYPE *GetEmbeddedFragmentRoots)(
IRawElementProviderFragment *This,
SAFEARRAY **pRetVal);
HRESULT (STDMETHODCALLTYPE *SetFocus)(
IRawElementProviderFragment *This);
HRESULT (STDMETHODCALLTYPE *get_FragmentRoot)(
IRawElementProviderFragment *This,
IRawElementProviderFragmentRoot **pRetVal);
END_INTERFACE
} IRawElementProviderFragmentVtbl;
interface IRawElementProviderFragment {
CONST_VTBL IRawElementProviderFragmentVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IRawElementProviderFragment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRawElementProviderFragment_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRawElementProviderFragment_Release(This) (This)->lpVtbl->Release(This)
/*** IRawElementProviderFragment methods ***/
#define IRawElementProviderFragment_Navigate(This,direction,pRetVal) (This)->lpVtbl->Navigate(This,direction,pRetVal)
#define IRawElementProviderFragment_GetRuntimeId(This,pRetVal) (This)->lpVtbl->GetRuntimeId(This,pRetVal)
#define IRawElementProviderFragment_get_BoundingRectangle(This,pRetVal) (This)->lpVtbl->get_BoundingRectangle(This,pRetVal)
#define IRawElementProviderFragment_GetEmbeddedFragmentRoots(This,pRetVal) (This)->lpVtbl->GetEmbeddedFragmentRoots(This,pRetVal)
#define IRawElementProviderFragment_SetFocus(This) (This)->lpVtbl->SetFocus(This)
#define IRawElementProviderFragment_get_FragmentRoot(This,pRetVal) (This)->lpVtbl->get_FragmentRoot(This,pRetVal)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IRawElementProviderFragment_QueryInterface(IRawElementProviderFragment* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IRawElementProviderFragment_AddRef(IRawElementProviderFragment* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IRawElementProviderFragment_Release(IRawElementProviderFragment* This) {
return This->lpVtbl->Release(This);
}
/*** IRawElementProviderFragment methods ***/
static FORCEINLINE HRESULT IRawElementProviderFragment_Navigate(IRawElementProviderFragment* This,enum NavigateDirection direction,IRawElementProviderFragment **pRetVal) {
return This->lpVtbl->Navigate(This,direction,pRetVal);
}
static FORCEINLINE HRESULT IRawElementProviderFragment_GetRuntimeId(IRawElementProviderFragment* This,SAFEARRAY **pRetVal) {
return This->lpVtbl->GetRuntimeId(This,pRetVal);
}
static FORCEINLINE HRESULT IRawElementProviderFragment_get_BoundingRectangle(IRawElementProviderFragment* This,struct UiaRect *pRetVal) {
return This->lpVtbl->get_BoundingRectangle(This,pRetVal);
}
static FORCEINLINE HRESULT IRawElementProviderFragment_GetEmbeddedFragmentRoots(IRawElementProviderFragment* This,SAFEARRAY **pRetVal) {
return This->lpVtbl->GetEmbeddedFragmentRoots(This,pRetVal);
}
static FORCEINLINE HRESULT IRawElementProviderFragment_SetFocus(IRawElementProviderFragment* This) {
return This->lpVtbl->SetFocus(This);
}
static FORCEINLINE HRESULT IRawElementProviderFragment_get_FragmentRoot(IRawElementProviderFragment* This,IRawElementProviderFragmentRoot **pRetVal) {
return This->lpVtbl->get_FragmentRoot(This,pRetVal);
}
#endif
#endif
#endif
#endif /* __IRawElementProviderFragment_INTERFACE_DEFINED__ */
/*****************************************************************************
* IRawElementProviderFragmentRoot interface
*/
#ifndef __IRawElementProviderFragmentRoot_INTERFACE_DEFINED__
#define __IRawElementProviderFragmentRoot_INTERFACE_DEFINED__
DEFINE_GUID(IID_IRawElementProviderFragmentRoot, 0x620ce2a5, 0xab8f, 0x40a9, 0x86,0xcb, 0xde,0x3c,0x75,0x59,0x9b,0x58);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("620ce2a5-ab8f-40a9-86cb-de3c75599b58")
IRawElementProviderFragmentRoot : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE ElementProviderFromPoint(
double x,
double y,
IRawElementProviderFragment **pRetVal) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFocus(
IRawElementProviderFragment **pRetVal) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IRawElementProviderFragmentRoot, 0x620ce2a5, 0xab8f, 0x40a9, 0x86,0xcb, 0xde,0x3c,0x75,0x59,0x9b,0x58)
#endif
#else
typedef struct IRawElementProviderFragmentRootVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IRawElementProviderFragmentRoot *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IRawElementProviderFragmentRoot *This);
ULONG (STDMETHODCALLTYPE *Release)(
IRawElementProviderFragmentRoot *This);
/*** IRawElementProviderFragmentRoot methods ***/
HRESULT (STDMETHODCALLTYPE *ElementProviderFromPoint)(
IRawElementProviderFragmentRoot *This,
double x,
double y,
IRawElementProviderFragment **pRetVal);
HRESULT (STDMETHODCALLTYPE *GetFocus)(
IRawElementProviderFragmentRoot *This,
IRawElementProviderFragment **pRetVal);
END_INTERFACE
} IRawElementProviderFragmentRootVtbl;
interface IRawElementProviderFragmentRoot {
CONST_VTBL IRawElementProviderFragmentRootVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IRawElementProviderFragmentRoot_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRawElementProviderFragmentRoot_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRawElementProviderFragmentRoot_Release(This) (This)->lpVtbl->Release(This)
/*** IRawElementProviderFragmentRoot methods ***/
#define IRawElementProviderFragmentRoot_ElementProviderFromPoint(This,x,y,pRetVal) (This)->lpVtbl->ElementProviderFromPoint(This,x,y,pRetVal)
#define IRawElementProviderFragmentRoot_GetFocus(This,pRetVal) (This)->lpVtbl->GetFocus(This,pRetVal)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IRawElementProviderFragmentRoot_QueryInterface(IRawElementProviderFragmentRoot* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IRawElementProviderFragmentRoot_AddRef(IRawElementProviderFragmentRoot* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IRawElementProviderFragmentRoot_Release(IRawElementProviderFragmentRoot* This) {
return This->lpVtbl->Release(This);
}
/*** IRawElementProviderFragmentRoot methods ***/
static FORCEINLINE HRESULT IRawElementProviderFragmentRoot_ElementProviderFromPoint(IRawElementProviderFragmentRoot* This,double x,double y,IRawElementProviderFragment **pRetVal) {
return This->lpVtbl->ElementProviderFromPoint(This,x,y,pRetVal);
}
static FORCEINLINE HRESULT IRawElementProviderFragmentRoot_GetFocus(IRawElementProviderFragmentRoot* This,IRawElementProviderFragment **pRetVal) {
return This->lpVtbl->GetFocus(This,pRetVal);
}
#endif
#endif
#endif
#endif /* __IRawElementProviderFragmentRoot_INTERFACE_DEFINED__ */
#endif /* __UIA_LIBRARY_DEFINED__ */
/* Begin additional prototypes for all interfaces */

View File

@ -20,13 +20,24 @@
import "oaidl.idl";
import "oleacc.idl";
enum NavigateDirection {
NavigateDirection_Parent = 0x0000,
NavigateDirection_NextSibling = 0x0001,
NavigateDirection_PreviousSibling = 0x0002,
NavigateDirection_FirstChild = 0x0003,
NavigateDirection_LastChild = 0x0004,
};
enum ProviderOptions {
ProviderOptions_ClientSideProvider = 0x0001,
ProviderOptions_ServerSideProvider = 0x0002,
ProviderOptions_NonClientAreaProvider = 0x0004,
ProviderOptions_OverrideProvider = 0x0008,
ProviderOptions_ProviderOwnsSetFocus = 0x0010,
ProviderOptions_UseComThreading = 0x0020
ProviderOptions_UseComThreading = 0x0020,
ProviderOptions_RefuseNonClientSupport = 0x0040,
ProviderOptions_HasNativeIAccessible = 0x0080,
ProviderOptions_UseClientCoordinates = 0x0100,
};
typedef int PROPERTYID;
@ -35,6 +46,13 @@ typedef int EVENTID;
typedef int TEXTATTRIBUTEID;
typedef int CONTROLTYPEID;
struct UiaRect {
double left;
double top;
double width;
double height;
};
[
version(1.0),
uuid(930299ce-9965-4dec-b0f4-a54848d4b667),
@ -48,7 +66,8 @@ library UIA
[
object,
uuid(d6dd68d1-86fd-4332-8666-9abedea2d24c),
pointer_default(unique)
pointer_default(unique),
oleautomation
]
interface IRawElementProviderSimple : IUnknown
{
@ -88,4 +107,48 @@ library UIA
[in] IRawElementProviderSimple *pIn,
[out] IAccessibleEx **ppRetValOut);
}
interface IRawElementProviderFragmentRoot;
[
object,
uuid(f7063da8-8359-439c-9297-bbc5299a7d87),
pointer_default(unique),
oleautomation
]
interface IRawElementProviderFragment : IUnknown
{
HRESULT Navigate(
[in] enum NavigateDirection direction,
[out, retval] IRawElementProviderFragment **pRetVal);
HRESULT GetRuntimeId([out, retval] SAFEARRAY(int) *pRetVal);
HRESULT get_BoundingRectangle([out, retval] struct UiaRect *pRetVal);
/*
* FIXME: Current versions of Windows SDK use
* SAFEARRAY(IRawElementProviderFragmentRoot *) instead of
* SAFEARRAY(VARIANT). The new type is currently unsupported
* in widl, we should switch to it when it is.
*/
HRESULT GetEmbeddedFragmentRoots([out, retval] SAFEARRAY(VARIANT) *pRetVal);
HRESULT SetFocus();
[propget] HRESULT FragmentRoot([out, retval] IRawElementProviderFragmentRoot **pRetVal);
}
[
object,
uuid(620ce2a5-ab8f-40a9-86cb-de3c75599b58),
pointer_default(unique),
oleautomation
]
interface IRawElementProviderFragmentRoot : IUnknown
{
HRESULT ElementProviderFromPoint(
[in] double x,
[in] double y,
[out, retval] IRawElementProviderFragment **pRetVal);
HRESULT GetFocus([out, retval] IRawElementProviderFragment **pRetVal);
}
}