| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um/ |
Upload File : |
// -------------------------------------------------------------
// UIAutomationClient.idl
//
// UIAutomation Client interface definitions and related types and enums
//
// Copyright (c) Microsoft Corporation. All rights reserved.
// -------------------------------------------------------------
cpp_quote("// -------------------------------------------------------------")
cpp_quote("// UIAutomationClient.H")
cpp_quote("//")
cpp_quote("// UIAutomation Client interface definitions and related types and enums")
cpp_quote("// (Generated from UIAutomationClient.idl)")
cpp_quote("//")
cpp_quote("// Copyright (c) Microsoft Corporation. All rights reserved.")
cpp_quote("// -------------------------------------------------------------")
cpp_quote("#include <winapifamily.h>")
#pragma region Desktop Family
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
#define DO_NO_IMPORTS
import "UIAutomationCore.idl";
midl_pragma warning( disable: 2362 ) // This is only expected to go downlevel as far as XP, so a large interface is fine.
// Base enums
cpp_quote("#ifndef _INC_UIAUTOMATIONCOREAPI")
enum TreeScope
{
TreeScope_None = 0x0,
TreeScope_Element = 0x1,
TreeScope_Children = 0x2,
TreeScope_Descendants = 0x4,
TreeScope_Parent = 0x8,
TreeScope_Ancestors = 0x10,
TreeScope_Subtree = TreeScope_Element | TreeScope_Children | TreeScope_Descendants
};
enum PropertyConditionFlags
{
PropertyConditionFlags_None = 0x00,
PropertyConditionFlags_IgnoreCase = 0x01,
PropertyConditionFlags_MatchSubstring = 0x02,
};
enum AutomationElementMode
{
AutomationElementMode_None,
AutomationElementMode_Full
};
// Option groups (flags):
// 1) Traversal order (preorder, postorder): says when nodes should be tested against search
// conditions (on enter, on leave).
// 2) Visit order: defines in which order relatives are visited. Relatives include children
// and siblings. Visit orders are relative to parents. From the child perspective First to
// Last means 'visit the next sibling from the child' while Last to First means 'visit the
// previous sibling from the child'.
enum TreeTraversalOptions
{
// Default traversal options are:
// 1) Preorder,
// 2) Visit children from first to last.
TreeTraversalOptions_Default = 0x0,
// Traversal order: Postorder
TreeTraversalOptions_PostOrder = 0x1,
// Visit order: Visit children from last to first.
TreeTraversalOptions_LastToFirstOrder = 0x2
};
// Enum for IUIAutomation6 ConnectionRecoveryBehavior get/set property to set
// the options of the connection recovery behavior.
enum ConnectionRecoveryBehaviorOptions
{
ConnectionRecoveryBehaviorOptions_Disabled = 0x00,
ConnectionRecoveryBehaviorOptions_Enabled = 0x01,
};
// Enum for IUIAutomation6 CoalesceEvents get/set property to set the options
// of the connection recovery behavior.
enum CoalesceEventsOptions
{
CoalesceEventsOptions_Disabled = 0x00,
CoalesceEventsOptions_Enabled = 0x01,
};
cpp_quote("#endif")
struct ExtendedProperty {
BSTR PropertyName;
BSTR PropertyValue;
};
typedef void * UIA_HWND;
[
uuid(944de083-8fb8-45cf-bcb7-c477acb2f897),
lcid(0),
version(1.0),
]
library UIAutomationClient
{
importlib ("stdole2.tlb");
[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;
const long UIA_SelectionPattern2Id = 10034;
};
[dllname("<no entry points>")]
module UIA_EventIds
{
const long UIA_ToolTipOpenedEventId = 20000;
const long UIA_ToolTipClosedEventId = 20001;
const long UIA_StructureChangedEventId = 20002;
const long UIA_MenuOpenedEventId = 20003;
const long UIA_AutomationPropertyChangedEventId = 20004;
const long UIA_AutomationFocusChangedEventId = 20005;
const long UIA_AsyncContentLoadedEventId = 20006;
const long UIA_MenuClosedEventId = 20007;
const long UIA_LayoutInvalidatedEventId = 20008;
const long UIA_Invoke_InvokedEventId = 20009;
const long UIA_SelectionItem_ElementAddedToSelectionEventId = 20010;
const long UIA_SelectionItem_ElementRemovedFromSelectionEventId = 20011;
const long UIA_SelectionItem_ElementSelectedEventId = 20012;
const long UIA_Selection_InvalidatedEventId = 20013;
const long UIA_Text_TextSelectionChangedEventId = 20014;
const long UIA_Text_TextChangedEventId = 20015;
const long UIA_Window_WindowOpenedEventId = 20016;
const long UIA_Window_WindowClosedEventId = 20017;
const long UIA_MenuModeStartEventId = 20018;
const long UIA_MenuModeEndEventId = 20019;
const long UIA_InputReachedTargetEventId = 20020;
const long UIA_InputReachedOtherElementEventId = 20021;
const long UIA_InputDiscardedEventId = 20022;
const long UIA_SystemAlertEventId = 20023;
const long UIA_LiveRegionChangedEventId = 20024;
const long UIA_HostedFragmentRootsInvalidatedEventId = 20025;
const long UIA_Drag_DragStartEventId = 20026;
const long UIA_Drag_DragCancelEventId = 20027;
const long UIA_Drag_DragCompleteEventId = 20028;
const long UIA_DropTarget_DragEnterEventId = 20029;
const long UIA_DropTarget_DragLeaveEventId = 20030;
const long UIA_DropTarget_DroppedEventId = 20031;
const long UIA_TextEdit_TextChangedEventId = 20032;
const long UIA_TextEdit_ConversionTargetChangedEventId = 20033;
const long UIA_ChangesEventId = 20034;
const long UIA_NotificationEventId = 20035;
const long UIA_ActiveTextPositionChangedEventId = 20036;
};
[dllname("<no entry points>")]
module UIA_PropertyIds
{
const long UIA_RuntimeIdPropertyId = 30000;
const long UIA_BoundingRectanglePropertyId = 30001;
const long UIA_ProcessIdPropertyId = 30002;
const long UIA_ControlTypePropertyId = 30003;
const long UIA_LocalizedControlTypePropertyId = 30004;
const long UIA_NamePropertyId = 30005;
const long UIA_AcceleratorKeyPropertyId = 30006;
const long UIA_AccessKeyPropertyId = 30007;
const long UIA_HasKeyboardFocusPropertyId = 30008;
const long UIA_IsKeyboardFocusablePropertyId = 30009;
const long UIA_IsEnabledPropertyId = 30010;
const long UIA_AutomationIdPropertyId = 30011;
const long UIA_ClassNamePropertyId = 30012;
const long UIA_HelpTextPropertyId = 30013;
const long UIA_ClickablePointPropertyId = 30014;
const long UIA_CulturePropertyId = 30015;
const long UIA_IsControlElementPropertyId = 30016;
const long UIA_IsContentElementPropertyId = 30017;
const long UIA_LabeledByPropertyId = 30018;
const long UIA_IsPasswordPropertyId = 30019;
const long UIA_NativeWindowHandlePropertyId = 30020;
const long UIA_ItemTypePropertyId = 30021;
const long UIA_IsOffscreenPropertyId = 30022;
const long UIA_OrientationPropertyId = 30023;
const long UIA_FrameworkIdPropertyId = 30024;
const long UIA_IsRequiredForFormPropertyId = 30025;
const long UIA_ItemStatusPropertyId = 30026;
const long UIA_IsDockPatternAvailablePropertyId = 30027;
const long UIA_IsExpandCollapsePatternAvailablePropertyId = 30028;
const long UIA_IsGridItemPatternAvailablePropertyId = 30029;
const long UIA_IsGridPatternAvailablePropertyId = 30030;
const long UIA_IsInvokePatternAvailablePropertyId = 30031;
const long UIA_IsMultipleViewPatternAvailablePropertyId = 30032;
const long UIA_IsRangeValuePatternAvailablePropertyId = 30033;
const long UIA_IsScrollPatternAvailablePropertyId = 30034;
const long UIA_IsScrollItemPatternAvailablePropertyId = 30035;
const long UIA_IsSelectionItemPatternAvailablePropertyId = 30036;
const long UIA_IsSelectionPatternAvailablePropertyId = 30037;
const long UIA_IsTablePatternAvailablePropertyId = 30038;
const long UIA_IsTableItemPatternAvailablePropertyId = 30039;
const long UIA_IsTextPatternAvailablePropertyId = 30040;
const long UIA_IsTogglePatternAvailablePropertyId = 30041;
const long UIA_IsTransformPatternAvailablePropertyId = 30042;
const long UIA_IsValuePatternAvailablePropertyId = 30043;
const long UIA_IsWindowPatternAvailablePropertyId = 30044;
const long UIA_ValueValuePropertyId = 30045;
const long UIA_ValueIsReadOnlyPropertyId = 30046;
const long UIA_RangeValueValuePropertyId = 30047;
const long UIA_RangeValueIsReadOnlyPropertyId = 30048;
const long UIA_RangeValueMinimumPropertyId = 30049;
const long UIA_RangeValueMaximumPropertyId = 30050;
const long UIA_RangeValueLargeChangePropertyId = 30051;
const long UIA_RangeValueSmallChangePropertyId = 30052;
const long UIA_ScrollHorizontalScrollPercentPropertyId = 30053;
const long UIA_ScrollHorizontalViewSizePropertyId = 30054;
const long UIA_ScrollVerticalScrollPercentPropertyId = 30055;
const long UIA_ScrollVerticalViewSizePropertyId = 30056;
const long UIA_ScrollHorizontallyScrollablePropertyId = 30057;
const long UIA_ScrollVerticallyScrollablePropertyId = 30058;
const long UIA_SelectionSelectionPropertyId = 30059;
const long UIA_SelectionCanSelectMultiplePropertyId = 30060;
const long UIA_SelectionIsSelectionRequiredPropertyId = 30061;
const long UIA_GridRowCountPropertyId = 30062;
const long UIA_GridColumnCountPropertyId = 30063;
const long UIA_GridItemRowPropertyId = 30064;
const long UIA_GridItemColumnPropertyId = 30065;
const long UIA_GridItemRowSpanPropertyId = 30066;
const long UIA_GridItemColumnSpanPropertyId = 30067;
const long UIA_GridItemContainingGridPropertyId = 30068;
const long UIA_DockDockPositionPropertyId = 30069;
const long UIA_ExpandCollapseExpandCollapseStatePropertyId = 30070;
const long UIA_MultipleViewCurrentViewPropertyId = 30071;
const long UIA_MultipleViewSupportedViewsPropertyId = 30072;
const long UIA_WindowCanMaximizePropertyId = 30073;
const long UIA_WindowCanMinimizePropertyId = 30074;
const long UIA_WindowWindowVisualStatePropertyId = 30075;
const long UIA_WindowWindowInteractionStatePropertyId = 30076;
const long UIA_WindowIsModalPropertyId = 30077;
const long UIA_WindowIsTopmostPropertyId = 30078;
const long UIA_SelectionItemIsSelectedPropertyId = 30079;
const long UIA_SelectionItemSelectionContainerPropertyId = 30080;
const long UIA_TableRowHeadersPropertyId = 30081;
const long UIA_TableColumnHeadersPropertyId = 30082;
const long UIA_TableRowOrColumnMajorPropertyId = 30083;
const long UIA_TableItemRowHeaderItemsPropertyId = 30084;
const long UIA_TableItemColumnHeaderItemsPropertyId = 30085;
const long UIA_ToggleToggleStatePropertyId = 30086;
const long UIA_TransformCanMovePropertyId = 30087;
const long UIA_TransformCanResizePropertyId = 30088;
const long UIA_TransformCanRotatePropertyId = 30089;
const long UIA_IsLegacyIAccessiblePatternAvailablePropertyId = 30090;
const long UIA_LegacyIAccessibleChildIdPropertyId = 30091;
const long UIA_LegacyIAccessibleNamePropertyId = 30092;
const long UIA_LegacyIAccessibleValuePropertyId = 30093;
const long UIA_LegacyIAccessibleDescriptionPropertyId = 30094;
const long UIA_LegacyIAccessibleRolePropertyId = 30095;
const long UIA_LegacyIAccessibleStatePropertyId = 30096;
const long UIA_LegacyIAccessibleHelpPropertyId = 30097;
const long UIA_LegacyIAccessibleKeyboardShortcutPropertyId = 30098;
const long UIA_LegacyIAccessibleSelectionPropertyId = 30099;
const long UIA_LegacyIAccessibleDefaultActionPropertyId = 30100;
const long UIA_AriaRolePropertyId = 30101;
const long UIA_AriaPropertiesPropertyId = 30102;
const long UIA_IsDataValidForFormPropertyId = 30103;
const long UIA_ControllerForPropertyId = 30104;
const long UIA_DescribedByPropertyId = 30105;
const long UIA_FlowsToPropertyId = 30106;
const long UIA_ProviderDescriptionPropertyId = 30107;
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;
}
[dllname("<no entry points>")]
module UIA_TextAttributeIds
{
const long UIA_AnimationStyleAttributeId = 40000;
const long UIA_BackgroundColorAttributeId = 40001;
const long UIA_BulletStyleAttributeId = 40002;
const long UIA_CapStyleAttributeId = 40003;
const long UIA_CultureAttributeId = 40004;
const long UIA_FontNameAttributeId = 40005;
const long UIA_FontSizeAttributeId = 40006;
const long UIA_FontWeightAttributeId = 40007;
const long UIA_ForegroundColorAttributeId = 40008;
const long UIA_HorizontalTextAlignmentAttributeId = 40009;
const long UIA_IndentationFirstLineAttributeId = 40010;
const long UIA_IndentationLeadingAttributeId = 40011;
const long UIA_IndentationTrailingAttributeId = 40012;
const long UIA_IsHiddenAttributeId = 40013;
const long UIA_IsItalicAttributeId = 40014;
const long UIA_IsReadOnlyAttributeId = 40015;
const long UIA_IsSubscriptAttributeId = 40016;
const long UIA_IsSuperscriptAttributeId = 40017;
const long UIA_MarginBottomAttributeId = 40018;
const long UIA_MarginLeadingAttributeId = 40019;
const long UIA_MarginTopAttributeId = 40020;
const long UIA_MarginTrailingAttributeId = 40021;
const long UIA_OutlineStylesAttributeId = 40022;
const long UIA_OverlineColorAttributeId = 40023;
const long UIA_OverlineStyleAttributeId = 40024;
const long UIA_StrikethroughColorAttributeId = 40025;
const long UIA_StrikethroughStyleAttributeId = 40026;
const long UIA_TabsAttributeId = 40027;
const long UIA_TextFlowDirectionsAttributeId = 40028;
const long UIA_UnderlineColorAttributeId = 40029;
const long UIA_UnderlineStyleAttributeId = 40030;
const long UIA_AnnotationTypesAttributeId = 40031;
const long UIA_AnnotationObjectsAttributeId = 40032;
const long UIA_StyleNameAttributeId = 40033;
const long UIA_StyleIdAttributeId = 40034;
const long UIA_LinkAttributeId = 40035;
const long UIA_IsActiveAttributeId = 40036;
const long UIA_SelectionActiveEndAttributeId = 40037;
const long UIA_CaretPositionAttributeId = 40038;
const long UIA_CaretBidiModeAttributeId = 40039;
const long UIA_LineSpacingAttributeId = 40040;
const long UIA_BeforeParagraphSpacingAttributeId = 40041;
const long UIA_AfterParagraphSpacingAttributeId = 40042;
const long UIA_SayAsInterpretAsAttributeId = 40043;
}
[dllname("<no entry points>")]
module UIA_ControlTypeIds
{
const long UIA_ButtonControlTypeId = 50000;
const long UIA_CalendarControlTypeId = 50001;
const long UIA_CheckBoxControlTypeId = 50002;
const long UIA_ComboBoxControlTypeId = 50003;
const long UIA_EditControlTypeId = 50004;
const long UIA_HyperlinkControlTypeId = 50005;
const long UIA_ImageControlTypeId = 50006;
const long UIA_ListItemControlTypeId = 50007;
const long UIA_ListControlTypeId = 50008;
const long UIA_MenuControlTypeId = 50009;
const long UIA_MenuBarControlTypeId = 50010;
const long UIA_MenuItemControlTypeId = 50011;
const long UIA_ProgressBarControlTypeId = 50012;
const long UIA_RadioButtonControlTypeId = 50013;
const long UIA_ScrollBarControlTypeId = 50014;
const long UIA_SliderControlTypeId = 50015;
const long UIA_SpinnerControlTypeId = 50016;
const long UIA_StatusBarControlTypeId = 50017;
const long UIA_TabControlTypeId = 50018;
const long UIA_TabItemControlTypeId = 50019;
const long UIA_TextControlTypeId = 50020;
const long UIA_ToolBarControlTypeId = 50021;
const long UIA_ToolTipControlTypeId = 50022;
const long UIA_TreeControlTypeId = 50023;
const long UIA_TreeItemControlTypeId = 50024;
const long UIA_CustomControlTypeId = 50025;
const long UIA_GroupControlTypeId = 50026;
const long UIA_ThumbControlTypeId = 50027;
const long UIA_DataGridControlTypeId = 50028;
const long UIA_DataItemControlTypeId = 50029;
const long UIA_DocumentControlTypeId = 50030;
const long UIA_SplitButtonControlTypeId = 50031;
const long UIA_WindowControlTypeId = 50032;
const long UIA_PaneControlTypeId = 50033;
const long UIA_HeaderControlTypeId = 50034;
const long UIA_HeaderItemControlTypeId = 50035;
const long UIA_TableControlTypeId = 50036;
const long UIA_TitleBarControlTypeId = 50037;
const long UIA_SeparatorControlTypeId = 50038;
const long UIA_SemanticZoomControlTypeId = 50039;
const long UIA_AppBarControlTypeId = 50040;
};
[dllname("<no entry points>")]
module UIA_AnnotationTypes
{
const long AnnotationType_Unknown = 60000;
const long AnnotationType_SpellingError = 60001;
const long AnnotationType_GrammarError = 60002;
const long AnnotationType_Comment = 60003;
const long AnnotationType_FormulaError = 60004;
const long AnnotationType_TrackChanges = 60005;
const long AnnotationType_Header = 60006;
const long AnnotationType_Footer = 60007;
const long AnnotationType_Highlighted = 60008;
const long AnnotationType_Endnote = 60009;
const long AnnotationType_Footnote = 60010;
const long AnnotationType_InsertionChange = 60011;
const long AnnotationType_DeletionChange = 60012;
const long AnnotationType_MoveChange = 60013;
const long AnnotationType_FormatChange = 60014;
const long AnnotationType_UnsyncedChange = 60015;
const long AnnotationType_EditingLockedChange = 60016;
const long AnnotationType_ExternalChange = 60017;
const long AnnotationType_ConflictingChange = 60018;
const long AnnotationType_Author = 60019;
const long AnnotationType_AdvancedProofingIssue = 60020;
const long AnnotationType_DataValidationError = 60021;
const long AnnotationType_CircularReferenceError = 60022;
const long AnnotationType_Mathematics = 60023;
const long AnnotationType_Sensitive = 60024;
};
[dllname("<no entry points>")]
module UIA_StyleIds
{
const long StyleId_Custom = 70000;
const long StyleId_Heading1 = 70001;
const long StyleId_Heading2 = 70002;
const long StyleId_Heading3 = 70003;
const long StyleId_Heading4 = 70004;
const long StyleId_Heading5 = 70005;
const long StyleId_Heading6 = 70006;
const long StyleId_Heading7 = 70007;
const long StyleId_Heading8 = 70008;
const long StyleId_Heading9 = 70009;
const long StyleId_Title = 70010;
const long StyleId_Subtitle = 70011;
const long StyleId_Normal = 70012;
const long StyleId_Emphasis = 70013;
const long StyleId_Quote = 70014;
const long StyleId_BulletedList = 70015;
const long StyleId_NumberedList = 70016;
};
[dllname("<no entry points>")]
module UIA_LandmarkTypeIds
{
const long UIA_CustomLandmarkTypeId = 80000;
const long UIA_FormLandmarkTypeId = 80001;
const long UIA_MainLandmarkTypeId = 80002;
const long UIA_NavigationLandmarkTypeId = 80003;
const long UIA_SearchLandmarkTypeId = 80004;
};
[dllname("<no entry points>")]
module UIA_HeadingLevelIds
{
const long HeadingLevel_None = 80050;
const long HeadingLevel1 = 80051;
const long HeadingLevel2 = 80052;
const long HeadingLevel3 = 80053;
const long HeadingLevel4 = 80054;
const long HeadingLevel5 = 80055;
const long HeadingLevel6 = 80056;
const long HeadingLevel7 = 80057;
const long HeadingLevel8 = 80058;
const long HeadingLevel9 = 80059;
};
[dllname("<no entry points>")]
module UIA_ChangeIds
{
const long UIA_SummaryChangeId = 90000;
};
[dllname("<no entry points>")]
module UIA_MetadataIds
{
const long UIA_SayAsInterpretAsMetadataId = 100000;
};
interface IUIAutomationElement;
interface IUIAutomationElementArray;
//
// IUIAutomationCondition
//
[object, uuid(352ffba8-0973-437c-a61f-f64cafd81df9), pointer_default(unique)]
interface IUIAutomationCondition : IUnknown
{
}
//
// IUIAutomationBoolCondition
//
[object, uuid(1b4e1f2e-75eb-4d0b-8952-5a69988e2307), pointer_default(unique)]
interface IUIAutomationBoolCondition : IUIAutomationCondition
{
[propget] HRESULT BooleanValue (
[out, retval] BOOL * boolVal );
}
//
// IUIAutomationPropertyCondition
//
[object, uuid(99ebf2cb-5578-4267-9ad4-afd6ea77e94b), pointer_default(unique)]
interface IUIAutomationPropertyCondition : IUIAutomationCondition
{
[propget] HRESULT PropertyId (
[out, retval] PROPERTYID * propertyId );
[propget] HRESULT PropertyValue (
[out, retval] VARIANT * propertyValue );
[propget] HRESULT PropertyConditionFlags (
[out, retval] enum PropertyConditionFlags * flags );
}
//
// IUIAutomationAndCondition
//
[object, uuid(a7d0af36-b912-45fe-9855-091ddc174aec), pointer_default(unique)]
interface IUIAutomationAndCondition : IUIAutomationCondition
{
[propget] HRESULT ChildCount (
[out, retval] int * childCount );
HRESULT GetChildrenAsNativeArray (
[out, size_is( ,*childArrayCount)] IUIAutomationCondition *** childArray,
[out] int * childArrayCount );
HRESULT GetChildren (
[out, retval] SAFEARRAY(IUIAutomationCondition) * childArray );
}
//
// IUIAutomationOrCondition
//
[object, uuid(8753f032-3db1-47b5-a1fc-6e34a266c712), pointer_default(unique)]
interface IUIAutomationOrCondition : IUIAutomationCondition
{
[propget] HRESULT ChildCount (
[out, retval] int * childCount );
HRESULT GetChildrenAsNativeArray (
[out, size_is(, *childArrayCount)] IUIAutomationCondition *** childArray,
[out] int * childArrayCount );
HRESULT GetChildren (
[out, retval] SAFEARRAY(IUIAutomationCondition) * childArray );
}
//
// IUIAutomationNotCondition
//
[object, uuid(f528b657-847b-498c-8896-d52b565407a1), pointer_default(unique)]
interface IUIAutomationNotCondition : IUIAutomationCondition
{
HRESULT GetChild (
[out, retval] IUIAutomationCondition ** condition );
}
//
// IUIAutomationCacheRequest
//
[object, uuid(b32a92b5-bc25-4078-9c08-d7ee95c48e03), pointer_default(unique)]
interface IUIAutomationCacheRequest : IUnknown
{
HRESULT AddProperty (
[in] PROPERTYID propertyId );
HRESULT AddPattern (
[in] PATTERNID patternId );
HRESULT Clone (
[out, retval] IUIAutomationCacheRequest ** clonedRequest );
[propget] HRESULT TreeScope (
[out, retval] enum TreeScope * scope );
[propput] HRESULT TreeScope (
[in] enum TreeScope scope );
[propget] HRESULT TreeFilter (
[out, retval] IUIAutomationCondition ** filter );
[propput] HRESULT TreeFilter (
[in] IUIAutomationCondition * filter );
[propget] HRESULT AutomationElementMode (
[out, retval] enum AutomationElementMode * mode );
[propput] HRESULT AutomationElementMode (
[in] enum AutomationElementMode mode );
}
//
// IUIAutomationTreeWalker
//
[object, uuid(4042c624-389c-4afc-a630-9df854a541fc), pointer_default(unique)]
interface IUIAutomationTreeWalker : IUnknown
{
HRESULT GetParentElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** parent );
HRESULT GetFirstChildElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** first );
HRESULT GetLastChildElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** last );
HRESULT GetNextSiblingElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** next );
HRESULT GetPreviousSiblingElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** previous );
HRESULT NormalizeElement (
[in] IUIAutomationElement * element,
[out, retval] IUIAutomationElement ** normalized );
// Separate * CacheRequest names exist, because there's no name overloading in COM
HRESULT GetParentElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** parent );
HRESULT GetFirstChildElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** first );
HRESULT GetLastChildElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** last );
HRESULT GetNextSiblingElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** next );
HRESULT GetPreviousSiblingElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** previous );
HRESULT NormalizeElementBuildCache (
[in] IUIAutomationElement * element,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** normalized );
[propget] HRESULT Condition (
[out, retval] IUIAutomationCondition ** condition );
}
//
// IUIAutomationEventHandler
//
[object, uuid(146c3c17-f12e-4e22-8c27-f894b9b79c69), pointer_default(unique), oleautomation]
interface IUIAutomationEventHandler : IUnknown
{
HRESULT HandleAutomationEvent (
[in] IUIAutomationElement * sender,
[in] EVENTID eventId );
}
//
// IUIAutomationPropertyChangedEventHandler
//
[object, uuid(40cd37d4-c756-4b0c-8c6f-bddfeeb13b50), pointer_default(unique), oleautomation]
interface IUIAutomationPropertyChangedEventHandler : IUnknown
{
HRESULT HandlePropertyChangedEvent (
[in] IUIAutomationElement * sender,
[in] PROPERTYID propertyId,
[in] VARIANT newValue );
}
//
// IUIAutomationStructureChangedEventHandler
//
[object, uuid(e81d1b4e-11c5-42f8-9754-e7036c79f054), pointer_default(unique), oleautomation]
interface IUIAutomationStructureChangedEventHandler : IUnknown
{
HRESULT HandleStructureChangedEvent (
[in] IUIAutomationElement * sender,
[in] enum StructureChangeType changeType,
[in] SAFEARRAY(int) runtimeId );
}
//
// IUIAutomationFocusChangedEventHandler
//
[object, uuid(c270f6b5-5c69-4290-9745-7a7f97169468), pointer_default(unique), oleautomation]
interface IUIAutomationFocusChangedEventHandler : IUnknown
{
HRESULT HandleFocusChangedEvent (
[in] IUIAutomationElement * sender );
}
//
// IUIAutomationTextEditTextChangedEventHandler
//
[object, uuid(92FAA680-E704-4156-931A-E32D5BB38F3F), pointer_default(unique), oleautomation]
interface IUIAutomationTextEditTextChangedEventHandler : IUnknown
{
HRESULT HandleTextEditTextChangedEvent (
[in] IUIAutomationElement *sender,
[in] enum TextEditChangeType textEditChangeType,
[in] SAFEARRAY(BSTR) eventStrings );
}
//
// IUIAutomationChangesEventHandler
//
[object, uuid(58EDCA55-2C3E-4980-B1B9-56C17F27A2A0), pointer_default(unique), oleautomation]
interface IUIAutomationChangesEventHandler : IUnknown
{
HRESULT HandleChangesEvent(
[in] IUIAutomationElement *sender,
[in, size_is(changesCount)] struct UiaChangeInfo *uiaChanges,
[in] int changesCount);
}
//
// IUIAutomationNotificationEventHandler
//
[object, uuid(C7CB2637-E6C2-4D0C-85DE-4948C02175C7), pointer_default(unique), oleautomation]
interface IUIAutomationNotificationEventHandler : IUnknown
{
HRESULT HandleNotificationEvent(
[in] IUIAutomationElement* sender,
enum NotificationKind notificationKind,
enum NotificationProcessing notificationProcessing,
[in] BSTR displayString,
[in] BSTR activityId);
}
//
// IUIAutomationInvokePattern
//
[object, uuid(fb377fbe-8ea6-46d5-9c73-6499642d3059), pointer_default(unique)]
interface IUIAutomationInvokePattern : IUnknown
{
HRESULT Invoke ( );
}
//
// IUIAutomationDockPattern
//
[object, uuid(fde5ef97-1464-48f6-90bf-43d0948e86ec), pointer_default(unique)]
interface IUIAutomationDockPattern : IUnknown
{
HRESULT SetDockPosition (
[in] enum DockPosition dockPos );
[propget] HRESULT CurrentDockPosition (
[out, retval] enum DockPosition * retVal );
[propget] HRESULT CachedDockPosition (
[out, retval] enum DockPosition * retVal );
}
//
// IUIAutomationExpandCollapsePattern
//
[object, uuid(619be086-1f4e-4ee4-bafa-210128738730), pointer_default(unique)]
interface IUIAutomationExpandCollapsePattern : IUnknown
{
HRESULT Expand ( );
HRESULT Collapse ( );
[propget] HRESULT CurrentExpandCollapseState (
[out, retval] enum ExpandCollapseState * retVal );
[propget] HRESULT CachedExpandCollapseState (
[out, retval] enum ExpandCollapseState * retVal );
}
//
// IUIAutomationGridPattern
//
[object, uuid(414c3cdc-856b-4f5b-8538-3131c6302550), pointer_default(unique)]
interface IUIAutomationGridPattern : IUnknown
{
HRESULT GetItem (
[in] int row,
[in] int column,
[out, retval] IUIAutomationElement ** element );
[propget] HRESULT CurrentRowCount (
[out, retval] int * retVal );
[propget] HRESULT CurrentColumnCount (
[out, retval] int * retVal );
[propget] HRESULT CachedRowCount (
[out, retval] int * retVal );
[propget] HRESULT CachedColumnCount (
[out, retval] int * retVal );
}
//
// IUIAutomationGridItemPattern
//
[object, uuid(78f8ef57-66c3-4e09-bd7c-e79b2004894d), pointer_default(unique)]
interface IUIAutomationGridItemPattern : IUnknown
{
[propget] HRESULT CurrentContainingGrid (
[out, retval] IUIAutomationElement ** retVal );
[propget] HRESULT CurrentRow (
[out, retval] int * retVal );
[propget] HRESULT CurrentColumn (
[out, retval] int * retVal );
[propget] HRESULT CurrentRowSpan (
[out, retval] int * retVal );
[propget] HRESULT CurrentColumnSpan (
[out, retval] int * retVal );
[propget] HRESULT CachedContainingGrid (
[out, retval] IUIAutomationElement ** retVal );
[propget] HRESULT CachedRow (
[out, retval] int * retVal );
[propget] HRESULT CachedColumn (
[out, retval] int * retVal );
[propget] HRESULT CachedRowSpan (
[out, retval] int * retVal );
[propget] HRESULT CachedColumnSpan (
[out, retval] int * retVal );
}
//
// IUIAutomationMultipleViewPattern
//
[object, uuid(8d253c91-1dc5-4bb5-b18f-ade16fa495e8), pointer_default(unique)]
interface IUIAutomationMultipleViewPattern : IUnknown
{
HRESULT GetViewName (
[in] int view,
[out, retval] BSTR * name );
HRESULT SetCurrentView (
[in] int view );
[propget] HRESULT CurrentCurrentView (
[out, retval] int * retVal );
HRESULT GetCurrentSupportedViews (
[out, retval] SAFEARRAY(int) * retVal );
[propget] HRESULT CachedCurrentView (
[out, retval] int * retVal );
HRESULT GetCachedSupportedViews (
[out, retval] SAFEARRAY(int) * retVal );
}
//
// IUIAutomationObjectModelPattern
//
[object, uuid(71c284b3-c14d-4d14-981e-19751b0d756d), pointer_default(unique)]
interface IUIAutomationObjectModelPattern : IUnknown
{
HRESULT GetUnderlyingObjectModel (
[out, retval] IUnknown ** retVal );
}
//
// IUIAutomationRangeValuePattern
//
[object, uuid(59213f4f-7346-49e5-b120-80555987a148), pointer_default(unique)]
interface IUIAutomationRangeValuePattern : IUnknown
{
HRESULT SetValue (
[in] double val );
[propget] HRESULT CurrentValue (
[out, retval] double * retVal );
[propget] HRESULT CurrentIsReadOnly (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentMaximum (
[out, retval] double * retVal );
[propget] HRESULT CurrentMinimum (
[out, retval] double * retVal );
[propget] HRESULT CurrentLargeChange (
[out, retval] double * retVal );
[propget] HRESULT CurrentSmallChange (
[out, retval] double * retVal );
[propget] HRESULT CachedValue (
[out, retval] double * retVal );
[propget] HRESULT CachedIsReadOnly (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedMaximum (
[out, retval] double * retVal );
[propget] HRESULT CachedMinimum (
[out, retval] double * retVal );
[propget] HRESULT CachedLargeChange (
[out, retval] double * retVal );
[propget] HRESULT CachedSmallChange (
[out, retval] double * retVal );
}
//
// IUIAutomationScrollPattern
//
[object, uuid(88f4d42a-e881-459d-a77c-73bbbb7e02dc), pointer_default(unique)]
interface IUIAutomationScrollPattern : IUnknown
{
HRESULT Scroll (
[in] enum ScrollAmount horizontalAmount,
[in] enum ScrollAmount verticalAmount );
HRESULT SetScrollPercent (
[in] double horizontalPercent,
[in] double verticalPercent );
[propget] HRESULT CurrentHorizontalScrollPercent (
[out, retval] double * retVal );
[propget] HRESULT CurrentVerticalScrollPercent (
[out, retval] double * retVal );
[propget] HRESULT CurrentHorizontalViewSize (
[out, retval] double * retVal );
[propget] HRESULT CurrentVerticalViewSize (
[out, retval] double * retVal );
[propget] HRESULT CurrentHorizontallyScrollable (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentVerticallyScrollable (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedHorizontalScrollPercent (
[out, retval] double * retVal );
[propget] HRESULT CachedVerticalScrollPercent (
[out, retval] double * retVal );
[propget] HRESULT CachedHorizontalViewSize (
[out, retval] double * retVal );
[propget] HRESULT CachedVerticalViewSize (
[out, retval] double * retVal );
[propget] HRESULT CachedHorizontallyScrollable (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedVerticallyScrollable (
[out, retval] BOOL * retVal );
}
//
// IUIAutomationScrollItemPattern
//
[object, uuid(b488300f-d015-4f19-9c29-bb595e3645ef), pointer_default(unique)]
interface IUIAutomationScrollItemPattern : IUnknown
{
HRESULT ScrollIntoView ( );
}
//
// IUIAutomationSelectionPattern
//
[object, uuid(5ed5202e-b2ac-47a6-b638-4b0bf140d78e), pointer_default(unique)]
interface IUIAutomationSelectionPattern : IUnknown
{
HRESULT GetCurrentSelection (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CurrentCanSelectMultiple (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsSelectionRequired (
[out, retval] BOOL * retVal );
HRESULT GetCachedSelection (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedCanSelectMultiple (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsSelectionRequired (
[out, retval] BOOL * retVal );
}
//
// IUIAutomationSelectionPattern2
//
[object, uuid(0532bfae-c011-4e32-a343-6d642d798555), pointer_default(unique)]
interface IUIAutomationSelectionPattern2 : IUIAutomationSelectionPattern
{
[propget] HRESULT CurrentFirstSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CurrentLastSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CurrentCurrentSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CurrentItemCount(
[out, retval] int * retVal);
[propget] HRESULT CachedFirstSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CachedLastSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CachedCurrentSelectedItem(
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CachedItemCount(
[out, retval] int * retVal);
}
//
// IUIAutomationSelectionItemPattern
//
[object, uuid(a8efa66a-0fda-421a-9194-38021f3578ea), pointer_default(unique)]
interface IUIAutomationSelectionItemPattern : IUnknown
{
HRESULT Select ( );
HRESULT AddToSelection ( );
HRESULT RemoveFromSelection ( );
[propget] HRESULT CurrentIsSelected (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentSelectionContainer (
[out, retval] IUIAutomationElement ** retVal );
[propget] HRESULT CachedIsSelected (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedSelectionContainer (
[out, retval] IUIAutomationElement ** retVal );
}
//
// IUIAutomationSynchronizedInputPattern
//
[object, uuid(2233be0b-afb7-448b-9fda-3b378aa5eae1), pointer_default(unique)]
interface IUIAutomationSynchronizedInputPattern : IUnknown
{
HRESULT StartListening (
[in] enum SynchronizedInputType inputType );
HRESULT Cancel ( );
}
//
// IUIAutomationTablePattern
//
[object, uuid(620e691c-ea96-4710-a850-754b24ce2417), pointer_default(unique)]
interface IUIAutomationTablePattern : IUnknown
{
HRESULT GetCurrentRowHeaders (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCurrentColumnHeaders (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CurrentRowOrColumnMajor (
[out, retval] enum RowOrColumnMajor * retVal );
HRESULT GetCachedRowHeaders (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCachedColumnHeaders (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedRowOrColumnMajor (
[out, retval] enum RowOrColumnMajor * retVal );
}
//
// IUIAutomationTableItemPattern
//
[object, uuid(0b964eb3-ef2e-4464-9c79-61d61737a27e), pointer_default(unique)]
interface IUIAutomationTableItemPattern : IUnknown
{
HRESULT GetCurrentRowHeaderItems (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCurrentColumnHeaderItems (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCachedRowHeaderItems (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCachedColumnHeaderItems (
[out, retval] IUIAutomationElementArray ** retVal );
}
//
// IUIAutomationTogglePattern
//
[object, uuid(94cf8058-9b8d-4ab9-8bfd-4cd0a33c8c70), pointer_default(unique)]
interface IUIAutomationTogglePattern : IUnknown
{
HRESULT Toggle ( );
[propget] HRESULT CurrentToggleState (
[out, retval] enum ToggleState * retVal );
[propget] HRESULT CachedToggleState (
[out, retval] enum ToggleState * retVal );
}
//
// IUIAutomationTransformPattern
//
[object, uuid(a9b55844-a55d-4ef0-926d-569c16ff89bb), pointer_default(unique)]
interface IUIAutomationTransformPattern : IUnknown
{
HRESULT Move (
[in] double x,
[in] double y );
HRESULT Resize (
[in] double width,
[in] double height );
HRESULT Rotate (
[in] double degrees );
[propget] HRESULT CurrentCanMove (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentCanResize (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentCanRotate (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedCanMove (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedCanResize (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedCanRotate (
[out, retval] BOOL * retVal );
}
//
// IUIAutomationValuePattern
//
[object, uuid(a94cd8b1-0844-4cd6-9d2d-640537ab39e9), pointer_default(unique)]
interface IUIAutomationValuePattern : IUnknown
{
HRESULT SetValue (
[in] BSTR val );
[propget] HRESULT CurrentValue (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentIsReadOnly (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedValue (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedIsReadOnly (
[out, retval] BOOL * retVal );
}
//
// IUIAutomationWindowPattern
//
[object, uuid(0faef453-9208-43ef-bbb2-3b485177864f), pointer_default(unique)]
interface IUIAutomationWindowPattern : IUnknown
{
HRESULT Close ( );
HRESULT WaitForInputIdle (
[in] int milliseconds,
[out, retval] BOOL * success );
HRESULT SetWindowVisualState (
[in] enum WindowVisualState state );
[propget] HRESULT CurrentCanMaximize (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentCanMinimize (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsModal (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsTopmost (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentWindowVisualState (
[out, retval] enum WindowVisualState * retVal );
[propget] HRESULT CurrentWindowInteractionState (
[out, retval] enum WindowInteractionState * retVal );
[propget] HRESULT CachedCanMaximize (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedCanMinimize (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsModal (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsTopmost (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedWindowVisualState (
[out, retval] enum WindowVisualState * retVal );
[propget] HRESULT CachedWindowInteractionState (
[out, retval] enum WindowInteractionState * retVal );
}
//
// IUIAutomationTextRange
//
[object, uuid(a543cc6a-f4ae-494b-8239-c814481187a8), pointer_default(unique)]
interface IUIAutomationTextRange : IUnknown
{
HRESULT Clone (
[out, retval] IUIAutomationTextRange ** clonedRange );
HRESULT Compare (
[in] IUIAutomationTextRange * range,
[out, retval] BOOL * areSame );
HRESULT CompareEndpoints (
[in] enum TextPatternRangeEndpoint srcEndPoint,
[in] IUIAutomationTextRange * range,
[in] enum TextPatternRangeEndpoint targetEndPoint,
[out, retval] int * compValue );
HRESULT ExpandToEnclosingUnit (
[in] enum TextUnit textUnit );
HRESULT FindAttribute (
[in] TEXTATTRIBUTEID attr,
[in] VARIANT val,
[in] BOOL backward,
[out, retval] IUIAutomationTextRange ** found );
HRESULT FindText (
[in] BSTR text,
[in] BOOL backward,
[in] BOOL ignoreCase,
[out, retval] IUIAutomationTextRange ** found );
HRESULT GetAttributeValue (
[in] TEXTATTRIBUTEID attr,
[out, retval] VARIANT * value );
HRESULT GetBoundingRectangles (
[out, retval] SAFEARRAY(double) * boundingRects );
HRESULT GetEnclosingElement (
[out, retval] IUIAutomationElement ** enclosingElement );
HRESULT GetText (
[in] int maxLength,
[out, retval] BSTR * text );
HRESULT Move (
[in] enum TextUnit unit,
[in] int count,
[out, retval] int * moved );
HRESULT MoveEndpointByUnit (
[in] enum TextPatternRangeEndpoint endpoint,
[in] enum TextUnit unit,
[in] int count,
[out, retval] int * moved );
HRESULT MoveEndpointByRange (
[in] enum TextPatternRangeEndpoint srcEndPoint,
[in] IUIAutomationTextRange * range,
[in] enum TextPatternRangeEndpoint targetEndPoint );
HRESULT Select ( );
HRESULT AddToSelection ( );
HRESULT RemoveFromSelection ( );
HRESULT ScrollIntoView (
[in] BOOL alignToTop );
HRESULT GetChildren (
[out, retval] IUIAutomationElementArray ** children );
}
//
// IUIAutomationTextRange2
//
[object, uuid(BB9B40E0-5E04-46BD-9BE0-4B601B9AFAD4), pointer_default(unique)]
interface IUIAutomationTextRange2 : IUIAutomationTextRange
{
HRESULT ShowContextMenu ( );
}
//
// IUIAutomationTextRange3
//
[object, uuid(6A315D69-5512-4C2E-85F0-53FCE6DD4BC2), pointer_default(unique)]
interface IUIAutomationTextRange3 : IUIAutomationtextRange2
{
HRESULT GetEnclosingElementBuildCache(
[in] IUIAutomationCacheRequest* cacheRequest,
[out, retval] IUIAutomationElement** enclosingElement);
HRESULT GetChildrenBuildCache(
[in] IUIAutomationCacheRequest* cacheRequest,
[out, retval] IUIAutomationElementArray** children);
HRESULT GetAttributeValues(
[in, size_is(attributeIdCount)] const TEXTATTRIBUTEID* attributeIds,
[in] int attributeIdCount,
[out, retval] SAFEARRAY(VARIANT)* attributeValues);
}
//
// IUIAutomationTextRangeArray
//
[object, uuid(ce4ae76a-e717-4c98-81ea-47371d028eb6), pointer_default(unique)]
interface IUIAutomationTextRangeArray : IUnknown
{
[propget] HRESULT Length (
[out, retval] int * length );
HRESULT GetElement (
[in] int index,
[out, retval] IUIAutomationTextRange ** element );
}
//
// IUIAutomationTextPattern
//
[object, uuid(32eba289-3583-42c9-9c59-3b6d9a1e9b6a), pointer_default(unique)]
interface IUIAutomationTextPattern : IUnknown
{
HRESULT RangeFromPoint (
[in] POINT pt,
[out, retval] IUIAutomationTextRange ** range );
HRESULT RangeFromChild (
[in] IUIAutomationElement * child,
[out, retval] IUIAutomationTextRange ** range );
HRESULT GetSelection (
[out, retval] IUIAutomationTextRangeArray ** ranges );
HRESULT GetVisibleRanges (
[out, retval] IUIAutomationTextRangeArray ** ranges );
[propget] HRESULT DocumentRange (
[out, retval] IUIAutomationTextRange ** range );
[propget] HRESULT SupportedTextSelection (
[out, retval] enum SupportedTextSelection * supportedTextSelection );
}
//
// IUIAutomationTextPattern2
//
[object, uuid(506a921a-fcc9-409f-b23b-37eb74106872), pointer_default(unique)]
interface IUIAutomationTextPattern2 : IUIAutomationTextPattern
{
HRESULT RangeFromAnnotation (
[in] IUIAutomationElement * annotation,
[out, retval] IUIAutomationTextRange ** range );
HRESULT GetCaretRange (
[out] BOOL * isActive,
[out, retval] IUIAutomationTextRange ** range );
}
//
// IUIAutomationTextEditPattern
//
[object, uuid(17E21576-996C-4870-99D9-BFF323380C06), pointer_default(unique)]
interface IUIAutomationTextEditPattern : IUIAutomationTextPattern
{
HRESULT GetActiveComposition (
[out, retval] IUIAutomationTextRange ** range );
HRESULT GetConversionTarget (
[out, retval] IUIAutomationTextRange ** range );
}
//
// IUIAutomationGridItemPattern
//
[object, uuid(01EA217A-1766-47ED-A6CC-ACF492854B1F), pointer_default(unique)]
interface IUIAutomationCustomNavigationPattern : IUnknown
{
HRESULT Navigate(
[in] enum NavigateDirection direction,
[out, retval] IUIAutomationElement ** pRetVal);
}
//
// IUIAutomationActiveTextPositionChangedEventHandler
//
[object, uuid(F97933B0-8DAE-4496-8997-5BA015FE0D82), pointer_default(unique), oleautomation]
interface IUIAutomationActiveTextPositionChangedEventHandler : IUnknown
{
HRESULT HandleActiveTextPositionChangedEvent(
[in] IUIAutomationElement* sender,
[in] IUIAutomationTextRange* range);
}
//
// IUIAutomationLegacyIAccessiblePattern
//
// Parameter names are intentionally kept the same as IAccessible
[object, uuid(828055ad-355b-4435-86d5-3b51c14a9b1b), pointer_default(unique)]
interface IUIAutomationLegacyIAccessiblePattern: IUnknown
{
HRESULT Select ( long flagsSelect );
HRESULT DoDefaultAction ();
HRESULT SetValue ( LPCWSTR szValue );
[propget] HRESULT CurrentChildId (
[out, retval] int * pRetVal );
[propget] HRESULT CurrentName (
[out, retval] BSTR * pszName );
[propget] HRESULT CurrentValue (
[out, retval] BSTR * pszValue );
[propget] HRESULT CurrentDescription (
[out, retval] BSTR * pszDescription );
[propget] HRESULT CurrentRole (
[out, retval] DWORD * pdwRole );
[propget] HRESULT CurrentState (
[out, retval] DWORD * pdwState );
[propget] HRESULT CurrentHelp (
[out, retval] BSTR * pszHelp );
[propget] HRESULT CurrentKeyboardShortcut (
[out, retval] BSTR * pszKeyboardShortcut );
HRESULT GetCurrentSelection (
[out, retval] IUIAutomationElementArray ** pvarSelectedChildren );
[propget] HRESULT CurrentDefaultAction (
[out, retval] BSTR * pszDefaultAction );
[propget] HRESULT CachedChildId (
[out, retval] int * pRetVal );
[propget] HRESULT CachedName (
[out, retval] BSTR * pszName );
[propget] HRESULT CachedValue (
[out, retval] BSTR * pszValue );
[propget] HRESULT CachedDescription (
[out, retval] BSTR * pszDescription );
[propget] HRESULT CachedRole (
[out, retval] DWORD * pdwRole );
[propget] HRESULT CachedState (
[out, retval] DWORD * pdwState );
[propget] HRESULT CachedHelp (
[out, retval] BSTR * pszHelp );
[propget] HRESULT CachedKeyboardShortcut (
[out, retval] BSTR * pszKeyboardShortcut );
HRESULT GetCachedSelection (
[out, retval] IUIAutomationElementArray ** pvarSelectedChildren );
[propget] HRESULT CachedDefaultAction (
[out, retval] BSTR * pszDefaultAction );
HRESULT GetIAccessible ( [out, retval] IAccessible ** ppAccessible );
};
[object, uuid(c690fdb2-27a8-423c-812d-429773c9084e), pointer_default(unique)]
interface IUIAutomationItemContainerPattern : IUnknown
{
// Find item by specified property/value. May return actual
// AutomationElement or a placeholder if the matching element is
// virtualized.
// Returns E_INVALIDARG if the property requested is not one that the
// container supports searching over. Expected that most containers will
// support Name property, and if appropriate for the container,
// AutomationId and IsSelected.
//
// This method is expected to be relatively slow, since it may need to
// traverse multiple objects in order to find a matching one.
// When used in a loop to return multiple items, no specific order is
// defined so long as each item is returned only once (ie. loop should
// terminate). This method is also item-centric, not UI-centric, so items
// with multiple UI representations need only be returned once.
//
// A special propertyId of 0 means 'match all items'. This can be used
// with pStartAfter=NULL to get the first item, and then to get successive
// items. Value should be VT_EMPTY in this case.
HRESULT FindItemByProperty([in] IUIAutomationElement * pStartAfter,
[in] PROPERTYID propertyId,
[in] VARIANT value,
[out, retval] IUIAutomationElement ** pFound);
};
[object, uuid(6ba3d7a6-04cf-4f11-8793-a8d1cde9969f), pointer_default(unique)]
interface IUIAutomationVirtualizedItemPattern : IUnknown
{
// Request that a placeholder element make itself fully available. Blocks
// until element is available, which could take time.
// Returns S_OK if item is already available.
// Parent control may scroll as a side effect if the container needs to
// being the item into view in order to devirtualize it.
HRESULT Realize();
};
//
// IUIAutomationAnnotationPattern
//
[object, uuid(9a175b21-339e-41b1-8e8b-623f6b681098), pointer_default(unique)]
interface IUIAutomationAnnotationPattern : IUnknown
{
[propget] HRESULT CurrentAnnotationTypeId (
[out, retval] int * retVal );
[propget] HRESULT CurrentAnnotationTypeName (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentAuthor (
[out, retval] BSTR * retVal);
[propget] HRESULT CurrentDateTime (
[out, retval] BSTR * retVal);
[propget] HRESULT CurrentTarget (
[out, retval] IUIAutomationElement ** retVal);
[propget] HRESULT CachedAnnotationTypeId (
[out, retval] int * retVal );
[propget] HRESULT CachedAnnotationTypeName (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedAuthor (
[out, retval] BSTR * retVal);
[propget] HRESULT CachedDateTime (
[out, retval] BSTR * retVal);
[propget] HRESULT CachedTarget (
[out, retval] IUIAutomationElement ** retVal);
};
//
// IUIAutomationStylesPattern
//
[object, uuid(85b5f0a2-bd79-484a-ad2b-388c9838d5fb), pointer_default(unique)]
interface IUIAutomationStylesPattern : IUnknown
{
[propget] HRESULT CurrentStyleId (
[out, retval] int * retVal );
[propget] HRESULT CurrentStyleName (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentFillColor (
[out, retval] int * retVal );
[propget] HRESULT CurrentFillPatternStyle (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentShape (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentFillPatternColor (
[out, retval] int * retVal );
[propget] HRESULT CurrentExtendedProperties (
[out, retval] BSTR * retVal );
HRESULT GetCurrentExtendedPropertiesAsArray (
[out, size_is( ,* propertyCount)] struct ExtendedProperty ** propertyArray,
[out] int * propertyCount );
[propget] HRESULT CachedStyleId (
[out, retval] int * retVal );
[propget] HRESULT CachedStyleName (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedFillColor (
[out, retval] int * retVal );
[propget] HRESULT CachedFillPatternStyle (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedShape (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedFillPatternColor (
[out, retval] int * retVal );
[propget] HRESULT CachedExtendedProperties (
[out, retval] BSTR * retVal );
HRESULT GetCachedExtendedPropertiesAsArray (
[out, size_is( ,* propertyCount)] struct ExtendedProperty ** propertyArray,
[out] int * propertyCount );
};
//
// IUIAutomationSpreadsheetPattern
//
[object, uuid(7517a7c8-faae-4de9-9f08-29b91e8595c1), pointer_default(unique)]
interface IUIAutomationSpreadsheetPattern : IUnknown
{
HRESULT GetItemByName (
[in] BSTR name,
[out, retval] IUIAutomationElement ** element );
};
//
// IUIAutomationSpreadsheetItemPattern
//
[object, uuid(7d4fb86c-8d34-40e1-8e83-62c15204e335), pointer_default(unique)]
interface IUIAutomationSpreadsheetItemPattern : IUnknown
{
[propget] HRESULT CurrentFormula (
[out, retval] BSTR * retVal );
HRESULT GetCurrentAnnotationObjects (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCurrentAnnotationTypes (
[out, retval] SAFEARRAY(int) * retVal );
[propget] HRESULT CachedFormula (
[out, retval] BSTR * retVal );
HRESULT GetCachedAnnotationObjects (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCachedAnnotationTypes (
[out, retval] SAFEARRAY(int) * retVal );
};
//
// IUIAutomationTransformPattern2
//
[object, uuid(6d74d017-6ecb-4381-b38b-3c17a48ff1c2), pointer_default(unique)]
interface IUIAutomationTransformPattern2 : IUIAutomationTransformPattern
{
HRESULT Zoom (
[in] double zoomValue );
HRESULT ZoomByUnit(
[in] enum ZoomUnit zoomUnit);
[propget] HRESULT CurrentCanZoom (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedCanZoom (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentZoomLevel (
[out, retval] double * retVal );
[propget] HRESULT CachedZoomLevel (
[out, retval] double * retVal );
[propget] HRESULT CurrentZoomMinimum (
[out, retval] double * retVal );
[propget] HRESULT CachedZoomMinimum (
[out, retval] double * retVal );
[propget] HRESULT CurrentZoomMaximum (
[out, retval] double * retVal );
[propget] HRESULT CachedZoomMaximum (
[out, retval] double * retVal );
}
//
// IUIAutomationTextChildPattern
//
[object, uuid(6552b038-ae05-40c8-abfd-aa08352aab86), pointer_default(unique)]
interface IUIAutomationTextChildPattern : IUnknown
{
[propget] HRESULT TextContainer (
[out, retval] IUIAutomationElement ** container );
[propget] HRESULT TextRange (
[out, retval] IUIAutomationTextRange ** range );
}
//
// IUIAutomationDragPattern
//
[object, uuid(1dc7b570-1f54-4bad-bcda-d36a722fb7bd), pointer_default(unique)]
interface IUIAutomationDragPattern : IUnknown
{
[propget] HRESULT CurrentIsGrabbed (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsGrabbed (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentDropEffect (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedDropEffect (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentDropEffects (
[out, retval] SAFEARRAY(BSTR) * retVal );
[propget] HRESULT CachedDropEffects (
[out, retval] SAFEARRAY(BSTR) * retVal );
HRESULT GetCurrentGrabbedItems (
[out, retval] IUIAutomationElementArray ** retVal );
HRESULT GetCachedGrabbedItems (
[out, retval] IUIAutomationElementArray ** retVal );
}
//
// IUIAutomationDropTargetPattern
//
[object, uuid(69a095f7-eee4-430e-a46b-fb73b1ae39a5), pointer_default(unique)]
interface IUIAutomationDropTargetPattern : IUnknown
{
[propget] HRESULT CurrentDropTargetEffect (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedDropTargetEffect (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentDropTargetEffects (
[out, retval] SAFEARRAY(BSTR) * retVal );
[propget] HRESULT CachedDropTargetEffects (
[out, retval] SAFEARRAY(BSTR) * retVal );
}
//
// IUIAutomationElement
//
[object, uuid(d22108aa-8ac5-49a5-837b-37bbb3d7591e), pointer_default(unique)]
interface IUIAutomationElement : IUnknown
{
HRESULT SetFocus ( );
HRESULT GetRuntimeId (
[out, retval] SAFEARRAY(int) * runtimeId );
HRESULT FindFirst (
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[out, retval] IUIAutomationElement ** found );
HRESULT FindAll (
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[out, retval] IUIAutomationElementArray ** found );
HRESULT FindFirstBuildCache (
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** found );
HRESULT FindAllBuildCache (
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElementArray ** found );
HRESULT BuildUpdatedCache (
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** updatedElement );
HRESULT GetCurrentPropertyValue (
[in] PROPERTYID propertyId,
[out, retval] VARIANT * retVal);
HRESULT GetCurrentPropertyValueEx (
[in] PROPERTYID propertyId,
[in] BOOL ignoreDefaultValue,
[out, retval] VARIANT * retVal );
HRESULT GetCachedPropertyValue (
[in] PROPERTYID propertyId,
[out, retval] VARIANT * retVal );
HRESULT GetCachedPropertyValueEx (
[in] PROPERTYID propertyId,
[in] BOOL ignoreDefaultValue,
[out, retval] VARIANT * retVal );
// These versions exist to simplify using these methods, avoiding the extra Query
// Interface step that inevitably follows getting the Pattern.
HRESULT GetCurrentPatternAs (
[in] PATTERNID patternId,
[in] REFIID riid,
[out, iid_is(riid), retval] void ** patternObject );
HRESULT GetCachedPatternAs (
[in] PATTERNID patternId,
[in] REFIID riid,
[out, iid_is(riid), retval] void ** patternObject );
// These versions are better for managed code, or code that wants a generalized
// handling path, they return as pure IUnknowns
HRESULT GetCurrentPattern (
[in] PATTERNID patternId,
[out, retval] IUnknown ** patternObject );
HRESULT GetCachedPattern (
[in] PATTERNID patternId,
[out, retval] IUnknown ** patternObject );
HRESULT GetCachedParent (
[out, retval] IUIAutomationElement ** parent );
HRESULT GetCachedChildren (
[out, retval] IUIAutomationElementArray ** children );
// Current Property Getters (for convenience)
[propget] HRESULT CurrentProcessId (
[out, retval] int * retVal );
[propget] HRESULT CurrentControlType (
[out, retval] CONTROLTYPEID * retVal );
[propget] HRESULT CurrentLocalizedControlType (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentName (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentAcceleratorKey (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentAccessKey (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentHasKeyboardFocus (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsKeyboardFocusable (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsEnabled (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentAutomationId (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentClassName (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentHelpText (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentCulture (
[out, retval] int * retVal );
[propget] HRESULT CurrentIsControlElement (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsContentElement (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentIsPassword (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentNativeWindowHandle (
[out, retval] UIA_HWND * retVal );
[propget] HRESULT CurrentItemType (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentIsOffscreen (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentOrientation (
[out, retval] enum OrientationType * retVal );
[propget] HRESULT CurrentFrameworkId (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentIsRequiredForForm (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentItemStatus (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentBoundingRectangle (
[out, retval] RECT * retVal );
[propget] HRESULT CurrentLabeledBy (
[out, retval] IUIAutomationElement ** retVal );
[propget] HRESULT CurrentAriaRole (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentAriaProperties (
[out, retval] BSTR * retVal );
[propget] HRESULT CurrentIsDataValidForForm (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentControllerFor (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CurrentDescribedBy (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CurrentFlowsTo (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CurrentProviderDescription (
[out, retval] BSTR * retVal );
// Cached Property Getters (for convenience)
[propget] HRESULT CachedProcessId (
[out, retval] int * retVal );
[propget] HRESULT CachedControlType (
[out, retval] CONTROLTYPEID * retVal );
[propget] HRESULT CachedLocalizedControlType (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedName (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedAcceleratorKey (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedAccessKey (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedHasKeyboardFocus (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsKeyboardFocusable (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsEnabled (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedAutomationId (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedClassName (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedHelpText (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedCulture (
[out, retval] int * retVal );
[propget] HRESULT CachedIsControlElement (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsContentElement (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsPassword (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedNativeWindowHandle (
[out, retval] UIA_HWND * retVal );
[propget] HRESULT CachedItemType (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedIsOffscreen (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedOrientation (
[out, retval] enum OrientationType * retVal );
[propget] HRESULT CachedFrameworkId (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedIsRequiredForForm (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedItemStatus (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedBoundingRectangle (
[out, retval] RECT * retVal );
[propget] HRESULT CachedLabeledBy (
[out, retval] IUIAutomationElement ** retVal );
[propget] HRESULT CachedAriaRole (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedAriaProperties (
[out, retval] BSTR * retVal );
[propget] HRESULT CachedIsDataValidForForm (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedControllerFor (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedDescribedBy (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedFlowsTo (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedProviderDescription (
[out, retval] BSTR * retVal );
// Clickable point helper
HRESULT GetClickablePoint(
[out] POINT * clickable,
[out, retval] BOOL * gotClickable );
}
//
// IUIAutomationElement2
//
[object, uuid(6749c683-f70d-4487-a698-5f79d55290d6), pointer_default(unique)]
interface IUIAutomationElement2 : IUIAutomationElement
{
[propget] HRESULT CurrentOptimizeForVisualContent (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedOptimizeForVisualContent (
[out, retval] BOOL * retVal );
[propget] HRESULT CurrentLiveSetting (
[out, retval] enum LiveSetting * retVal );
[propget] HRESULT CachedLiveSetting (
[out, retval] enum LiveSetting * retVal );
[propget] HRESULT CurrentFlowsFrom (
[out, retval] IUIAutomationElementArray ** retVal );
[propget] HRESULT CachedFlowsFrom (
[out, retval] IUIAutomationElementArray ** retVal );
}
//
// IUIAutomationElement3
//
[object, uuid(8471DF34-AEE0-4A01-A7DE-7DB9AF12C296), pointer_default(unique)]
interface IUIAutomationElement3 : IUIAutomationElement2
{
HRESULT ShowContextMenu ( );
[propget] HRESULT CurrentIsPeripheral (
[out, retval] BOOL * retVal );
[propget] HRESULT CachedIsPeripheral (
[out, retval] BOOL * retVal );
}
//
// IUIAutomationElement4
//
[object, uuid(3B6E233C-52FB-4063-A4C9-77C075C2A06B), pointer_default(unique)]
interface IUIAutomationElement4 : IUIAutomationElement3
{
[propget] HRESULT CurrentPositionInSet(
[out, retval] int * retVal);
[propget] HRESULT CurrentSizeOfSet(
[out, retval] int * retVal);
[propget] HRESULT CurrentLevel(
[out, retval] int * retVal);
[propget] HRESULT CurrentAnnotationTypes(
[out, retval] SAFEARRAY(int) * retVal);
[propget] HRESULT CurrentAnnotationObjects(
[out, retval] IUIAutomationElementArray ** retVal);
[propget] HRESULT CachedPositionInSet(
[out, retval] int * retVal);
[propget] HRESULT CachedSizeOfSet(
[out, retval] int * retVal);
[propget] HRESULT CachedLevel(
[out, retval] int * retVal);
[propget] HRESULT CachedAnnotationTypes(
[out, retval] SAFEARRAY(int) * retVal);
[propget] HRESULT CachedAnnotationObjects(
[out, retval] IUIAutomationElementArray ** retVal);
}
//
// IUIAutomationElement5
//
[object, uuid(98141C1D-0D0E-4175-BBE2-6BFF455842A7), pointer_default(unique)]
interface IUIAutomationElement5 : IUIAutomationElement4
{
[propget] HRESULT CurrentLandmarkType(
[out, retval] LANDMARKTYPEID * retVal);
[propget] HRESULT CurrentLocalizedLandmarkType(
[out, retval] BSTR * retVal);
[propget] HRESULT CachedLandmarkType(
[out, retval] LANDMARKTYPEID * retVal);
[propget] HRESULT CachedLocalizedLandmarkType(
[out, retval] BSTR * retVal);
}
//
// IUIAutomationElement6
//
[object, uuid(4780d450-8bca-4977-afa5-a4a517f555e3), pointer_default(unique)]
interface IUIAutomationElement6 : IUIAutomationElement5
{
[propget] HRESULT CurrentFullDescription(
[out, retval] BSTR * retVal);
[propget] HRESULT CachedFullDescription(
[out, retval] BSTR * retVal);
}
//
// IUIAutomationElement7
//
[object, uuid(204e8572-cfc3-4c11-b0c8-7da7420750b7), pointer_default(unique)]
interface IUIAutomationElement7 : IUIAutomationElement6
{
HRESULT FindFirstWithOptions(
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] enum TreeTraversalOptions traversalOptions,
[in] IUIAutomationElement * root,
[out, retval] IUIAutomationElement ** found);
HRESULT FindAllWithOptions(
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] enum TreeTraversalOptions traversalOptions,
[in] IUIAutomationElement * root,
[out, retval] IUIAutomationElementArray ** found);
HRESULT FindFirstWithOptionsBuildCache(
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] enum TreeTraversalOptions traversalOptions,
[in] IUIAutomationElement * root,
[out, retval] IUIAutomationElement ** found);
HRESULT FindAllWithOptionsBuildCache(
[in] enum TreeScope scope,
[in] IUIAutomationCondition * condition,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] enum TreeTraversalOptions traversalOptions,
[in] IUIAutomationElement * root,
[out, retval] IUIAutomationElementArray ** found);
HRESULT GetCurrentMetadataValue(
[in] int targetId,
[in] METADATAID metadataId,
[out, retval] VARIANT* returnVal);
}
[object, uuid(8C60217D-5411-4CDE-BCC0-1CEDA223830C), pointer_default(unique)]
interface IUIAutomationElement8 : IUIAutomationElement7
{
[propget] HRESULT CurrentHeadingLevel(
[out, retval] HEADINGLEVELID* retVal);
[propget] HRESULT CachedHeadingLevel(
[out, retval] HEADINGLEVELID* retVal);
}
[object, uuid(39325fac-039d-440e-a3a3-5eb81a5cecc3), pointer_default(unique)]
interface IUIAutomationElement9 : IUIAutomationElement8
{
[propget] HRESULT CurrentIsDialog(
[out, retval] BOOL* retVal);
[propget] HRESULT CachedIsDialog(
[out, retval] BOOL* retVal);
}
// IUIAutomationElementArray
//
[object, uuid(14314595-b4bc-4055-95f2-58f2e42c9855), pointer_default(unique)]
interface IUIAutomationElementArray : IUnknown
{
[propget] HRESULT Length (
[out, retval] int * length );
HRESULT GetElement (
[in] int index,
[out, retval] IUIAutomationElement ** element );
}
//
// IUIAutomationProxyFactory
//
[object, uuid(85b94ecd-849d-42b6-b94d-d6db23fdf5a4), pointer_default(unique)]
interface IUIAutomationProxyFactory : IUnknown
{
HRESULT CreateProvider (
[in] UIA_HWND hwnd,
[in] LONG idObject,
[in] LONG idChild,
[out, retval] IRawElementProviderSimple **provider );
// The proxy Factory Id is an identifier of the Proxy Factory, it serves several purposes:
// - It uniquely identifies a given proxy factory, for ease of finding in the ProxyFactoryMapping
// - It is non-localized, so programs can use it to find a given proxy factory in the mapping for removal or position changing
// - It identifies which proxy factory created the proxy of a given element, for debugging purposes
// - Recommended Format is "Company Name: Proxy Name", to assist with uniqueness
[propget] HRESULT ProxyFactoryId (
[out, retval] BSTR *factoryId );
}
//
// IUIAutomationProxyFactoryEntry
//
[object, uuid(d50e472e-b64b-490c-bca1-d30696f9f289), pointer_default(unique)]
interface IUIAutomationProxyFactoryEntry : IUnknown
{
[propget] HRESULT ProxyFactory (
[out, retval] IUIAutomationProxyFactory **factory );
[propget] HRESULT ClassName (
[out, retval] BSTR *className );
[propget] HRESULT ImageName (
[out, retval] BSTR *imageName );
[propget] HRESULT AllowSubstringMatch (
[out, retval] BOOL *allowSubstringMatch );
[propget] HRESULT CanCheckBaseClass (
[out, retval] BOOL *canCheckBaseClass );
[propget] HRESULT NeedsAdviseEvents (
[out, retval] BOOL *adviseEvents );
[propput] HRESULT ClassName (
[in] LPCWSTR className );
[propput] HRESULT ImageName (
[in] LPCWSTR imageName );
[propput] HRESULT AllowSubstringMatch (
[in] BOOL allowSubstringMatch );
[propput] HRESULT CanCheckBaseClass (
[in] BOOL canCheckBaseClass );
[propput] HRESULT NeedsAdviseEvents (
[in] BOOL adviseEvents );
HRESULT SetWinEventsForAutomationEvent (
[in] EVENTID eventId,
[in] PROPERTYID propertyId,
[in] SAFEARRAY(UINT) winEvents );
HRESULT GetWinEventsForAutomationEvent (
[in] EVENTID eventId,
[in] PROPERTYID propertyId,
[out, retval] SAFEARRAY(UINT) * winEvents );
}
//
// IUIAutomationProxyFactoryMapping
//
[object, uuid(09e31e18-872d-4873-93d1-1e541ec133fd), pointer_default(unique)]
interface IUIAutomationProxyFactoryMapping : IUnknown
{
[propget] HRESULT Count (
[out, retval] UINT *count );
HRESULT GetTable (
[out, retval] SAFEARRAY (IUIAutomationProxyFactoryEntry) * table );
HRESULT GetEntry (
[in] UINT index,
[out, retval] IUIAutomationProxyFactoryEntry **entry );
HRESULT SetTable (
[in] SAFEARRAY (IUIAutomationProxyFactoryEntry) factoryList );
HRESULT InsertEntries (
[in] UINT before,
[in] SAFEARRAY (IUIAutomationProxyFactoryEntry) factoryList );
HRESULT InsertEntry (
[in] UINT before,
[in] IUIAutomationProxyFactoryEntry *factory );
HRESULT RemoveEntry (
[in] UINT index );
HRESULT ClearTable ( );
HRESULT RestoreDefaultTable ( );
}
//
// IUIAutomationEventHandlerGroup
//
[object, uuid(C9EE12F2-C13B-4408-997C-639914377F4E), pointer_default(unique)]
interface IUIAutomationEventHandlerGroup : IUnknown
{
HRESULT AddActiveTextPositionChangedEventHandler(
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationActiveTextPositionChangedEventHandler* handler);
HRESULT AddAutomationEventHandler(
[in] EVENTID eventId,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationEventHandler* handler);
HRESULT AddChangesEventHandler(
[in] enum TreeScope scope,
[in, size_is(changesCount)] int* changeTypes,
[in] int changesCount,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationChangesEventHandler* handler);
HRESULT AddNotificationEventHandler(
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationNotificationEventHandler* handler);
HRESULT AddPropertyChangedEventHandler(
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationPropertyChangedEventHandler* handler,
[in, size_is(propertyCount)] PROPERTYID* propertyArray,
[in] int propertyCount);
HRESULT AddStructureChangedEventHandler(
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationStructureChangedEventHandler* handler);
HRESULT AddTextEditTextChangedEventHandler(
[in] enum TreeScope scope,
[in] enum TextEditChangeType textEditChangeType,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationTextEditTextChangedEventHandler* handler);
}
//
// IUIAutomation
//
[object, uuid(30cbe57d-d9d0-452a-ab13-7ac5ac4825ee), pointer_default(unique)]
interface IUIAutomation : IUnknown
{
// Comparisons
HRESULT CompareElements (
[in] IUIAutomationElement * el1,
[in] IUIAutomationElement * el2,
[out, retval] BOOL * areSame );
HRESULT CompareRuntimeIds (
[in] SAFEARRAY(int) runtimeId1,
[in] SAFEARRAY(int) runtimeId2,
[out, retval] BOOL * areSame);
// Automation Element fetching
HRESULT GetRootElement (
[out, retval] IUIAutomationElement ** root );
HRESULT ElementFromHandle (
[in] UIA_HWND hwnd,
[out, retval] IUIAutomationElement ** element );
HRESULT ElementFromPoint (
[in] POINT pt,
[out, retval] IUIAutomationElement ** element );
HRESULT GetFocusedElement (
[out, retval] IUIAutomationElement ** element );
HRESULT GetRootElementBuildCache (
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** root );
HRESULT ElementFromHandleBuildCache (
[in] UIA_HWND hwnd,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** element );
HRESULT ElementFromPointBuildCache (
[in] POINT pt,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** element );
HRESULT GetFocusedElementBuildCache (
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** element );
// Tree Walker Creation
HRESULT CreateTreeWalker (
[in] IUIAutomationCondition * pCondition,
[out, retval] IUIAutomationTreeWalker ** walker );
[propget] HRESULT ControlViewWalker (
[out, retval] IUIAutomationTreeWalker ** walker );
[propget] HRESULT ContentViewWalker (
[out, retval] IUIAutomationTreeWalker ** walker );
[propget] HRESULT RawViewWalker (
[out, retval] IUIAutomationTreeWalker ** walker );
[propget] HRESULT RawViewCondition (
[out, retval] IUIAutomationCondition ** condition );
[propget] HRESULT ControlViewCondition (
[out, retval] IUIAutomationCondition ** condition );
[propget] HRESULT ContentViewCondition (
[out, retval] IUIAutomationCondition ** condition );
// Cache Request Creation
HRESULT CreateCacheRequest (
[out, retval] IUIAutomationCacheRequest ** cacheRequest );
// Condition Creation
HRESULT CreateTrueCondition (
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateFalseCondition (
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreatePropertyCondition (
[in] PROPERTYID propertyId,
[in] VARIANT value,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreatePropertyConditionEx (
[in] PROPERTYID propertyId,
[in] VARIANT value,
[in] enum PropertyConditionFlags flags,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateAndCondition (
[in] IUIAutomationCondition * condition1,
[in] IUIAutomationCondition * condition2,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateAndConditionFromArray (
[in] SAFEARRAY(IUIAutomationCondition) conditions,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateAndConditionFromNativeArray (
[in, size_is(conditionCount)] IUIAutomationCondition ** conditions,
[in] int conditionCount,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateOrCondition (
[in] IUIAutomationCondition * condition1,
[in] IUIAutomationCondition * condition2,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateOrConditionFromArray (
[in] SAFEARRAY(IUIAutomationCondition) conditions,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateOrConditionFromNativeArray (
[in, size_is(conditionCount)] IUIAutomationCondition ** conditions,
[in] int conditionCount,
[out, retval] IUIAutomationCondition ** newCondition );
HRESULT CreateNotCondition (
[in] IUIAutomationCondition * condition,
[out, retval] IUIAutomationCondition ** newCondition );
// Event Registration and Removal
HRESULT AddAutomationEventHandler (
[in] EVENTID eventId,
[in] IUIAutomationElement * element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] IUIAutomationEventHandler * handler );
HRESULT RemoveAutomationEventHandler (
[in] EVENTID eventId,
[in] IUIAutomationElement * element,
[in] IUIAutomationEventHandler * handler );
HRESULT AddPropertyChangedEventHandlerNativeArray (
[in] IUIAutomationElement * element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] IUIAutomationPropertyChangedEventHandler * handler,
[in, size_is(propertyCount)] PROPERTYID * propertyArray,
[in] int propertyCount );
HRESULT AddPropertyChangedEventHandler (
[in] IUIAutomationElement * element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] IUIAutomationPropertyChangedEventHandler * handler,
[in] SAFEARRAY(PROPERTYID) propertyArray );
HRESULT RemovePropertyChangedEventHandler (
[in] IUIAutomationElement * element,
[in] IUIAutomationPropertyChangedEventHandler * handler );
HRESULT AddStructureChangedEventHandler (
[in] IUIAutomationElement * element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest * cacheRequest,
[in] IUIAutomationStructureChangedEventHandler * handler );
HRESULT RemoveStructureChangedEventHandler (
[in] IUIAutomationElement * element,
[in] IUIAutomationStructureChangedEventHandler * handler );
HRESULT AddFocusChangedEventHandler (
[in] IUIAutomationCacheRequest * cacheRequest,
[in] IUIAutomationFocusChangedEventHandler * handler );
HRESULT RemoveFocusChangedEventHandler (
[in] IUIAutomationFocusChangedEventHandler * handler );
HRESULT RemoveAllEventHandlers ( );
// Conversion helpers
HRESULT IntNativeArrayToSafeArray (
[in, size_is(arrayCount)] int * array,
[in] int arrayCount,
[out, retval] SAFEARRAY(int) * safeArray );
HRESULT IntSafeArrayToNativeArray (
[in] SAFEARRAY(int) intArray,
[out, size_is( ,*arrayCount)] int ** array,
[out, retval] int * arrayCount );
HRESULT RectToVariant (
[in] RECT rc,
[out, retval] VARIANT * var );
HRESULT VariantToRect (
[in] VARIANT var,
[out, retval] RECT * rc );
HRESULT SafeArrayToRectNativeArray (
[in] SAFEARRAY(double) rects,
[out, size_is( ,*rectArrayCount)] RECT ** rectArray,
[out, retval] int * rectArrayCount );
// Proxy registration
HRESULT CreateProxyFactoryEntry(
[in] IUIAutomationProxyFactory *factory,
[out, retval] IUIAutomationProxyFactoryEntry **factoryEntry );
[propget] HRESULT ProxyFactoryMapping(
[out, retval] IUIAutomationProxyFactoryMapping **factoryMapping );
// Name Lookup
HRESULT GetPropertyProgrammaticName(
[in] PROPERTYID property,
[out, retval] BSTR * name );
HRESULT GetPatternProgrammaticName(
[in] PATTERNID pattern,
[out, retval] BSTR * name );
// Return potentially supported patterns. Note that object may not actually
// support the pattern when asked for it later.
HRESULT PollForPotentialSupportedPatterns(
[in] IUIAutomationElement * pElement,
[out] SAFEARRAY(int) * patternIds,
[out] SAFEARRAY(BSTR) * patternNames);
// Return potentially supported properties. Note that object may not actually
// support all properties when asked.
HRESULT PollForPotentialSupportedProperties(
[in] IUIAutomationElement * pElement,
[out] SAFEARRAY(int) * propertyIds,
[out] SAFEARRAY(BSTR) * propertyNames);
// Check whether this variant (returned from GetPropertyValue) is the NotSupported item.
HRESULT CheckNotSupported(
[in] VARIANT value,
[out, retval] BOOL * isNotSupported);
// Get the "Not Supported" object
[propget] HRESULT ReservedNotSupportedValue(
[out, retval] IUnknown **notSupportedValue);
// Get the "Mixed Attribute" object
[propget] HRESULT ReservedMixedAttributeValue(
[out, retval] IUnknown **mixedAttributeValue);
// IAccessible interop
HRESULT ElementFromIAccessible (
[in] IAccessible * accessible,
[in] int childId,
[out, retval] IUIAutomationElement ** element );
HRESULT ElementFromIAccessibleBuildCache (
[in] IAccessible * accessible,
[in] int childId,
[in] IUIAutomationCacheRequest * cacheRequest,
[out, retval] IUIAutomationElement ** element );
}
//
// IUIAutomation2
//
[object, uuid(34723aff-0c9d-49d0-9896-7ab52df8cd8a), pointer_default(unique)]
interface IUIAutomation2 : IUIAutomation
{
// Mode to set focus automatically when element methods are called
[propget] HRESULT AutoSetFocus (
[out, retval] BOOL * autoSetFocus );
[propput] HRESULT AutoSetFocus (
[in] BOOL autoSetFocus );
// Adjust timeout (in milliseconds) for connecting to an element.
[propget] HRESULT ConnectionTimeout (
[out, retval] DWORD * timeout );
[propput] HRESULT ConnectionTimeout (
[in] DWORD timeout );
// Adjust timeout (in milliseconds) for interacting with an element after connecting to it.
[propget] HRESULT TransactionTimeout (
[out, retval] DWORD * timeout );
[propput] HRESULT TransactionTimeout (
[in] DWORD timeout );
}
//
// IUIAutomation3
//
[object, uuid(73D768DA-9B51-4B89-936E-C209290973E7), pointer_default(unique)]
interface IUIAutomation3 : IUIAutomation2
{
HRESULT AddTextEditTextChangedEventHandler (
[in] IUIAutomationElement *element,
[in] enum TreeScope scope,
[in] enum TextEditChangeType textEditChangeType,
[in] IUIAutomationCacheRequest *cacheRequest,
[in] IUIAutomationTextEditTextChangedEventHandler *handler );
HRESULT RemoveTextEditTextChangedEventHandler (
[in] IUIAutomationElement *element,
[in] IUIAutomationTextEditTextChangedEventHandler *handler );
}
//
// IUIAutomation4
//
[object, uuid(1189C02A-05F8-4319-8E21-E817E3DB2860), pointer_default(unique)]
interface IUIAutomation4 : IUIAutomation3
{
HRESULT AddChangesEventHandler(
[in] IUIAutomationElement *element,
[in] enum TreeScope scope,
[in, size_is(changesCount)] int *changeTypes,
[in] int changesCount,
[in] IUIAutomationCacheRequest * pCacheRequest,
[in] IUIAutomationChangesEventHandler *handler);
HRESULT RemoveChangesEventHandler(
[in] IUIAutomationElement *element,
[in] IUIAutomationChangesEventHandler *handler);
}
//
// IUIAutomation5
//
[object, uuid(25F700C8-D816-4057-A9DC-3CBDEE77E256), pointer_default(unique)]
interface IUIAutomation5 : IUIAutomation4
{
HRESULT AddNotificationEventHandler(
[in] IUIAutomationElement* element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationNotificationEventHandler* handler);
HRESULT RemoveNotificationEventHandler(
[in] IUIAutomationElement* element,
[in] IUIAutomationNotificationEventHandler* handler);
}
//
// IUIAutomation6
//
[object, uuid(AAE072DA-29E3-413D-87A7-192DBF81ED10), pointer_default(unique)]
interface IUIAutomation6 : IUIAutomation5
{
HRESULT CreateEventHandlerGroup(
[out] IUIAutomationEventHandlerGroup** handlerGroup);
HRESULT AddEventHandlerGroup(
[in] IUIAutomationElement* element,
[in] IUIAutomationEventHandlerGroup* handlerGroup);
HRESULT RemoveEventHandlerGroup(
[in] IUIAutomationElement* element,
[in] IUIAutomationEventHandlerGroup* handlerGroup);
[propget] HRESULT ConnectionRecoveryBehavior(
[out, retval] enum ConnectionRecoveryBehaviorOptions* connectionRecoveryBehaviorOptions);
[propput] HRESULT ConnectionRecoveryBehavior(
[in] enum ConnectionRecoveryBehaviorOptions connectionRecoveryBehaviorOptions);
[propget] HRESULT CoalesceEvents(
[out, retval] enum CoalesceEventsOptions* coalesceEventsOptions);
[propput] HRESULT CoalesceEvents(
[in] enum CoalesceEventsOptions coalesceEventsOptions);
HRESULT AddActiveTextPositionChangedEventHandler (
[in] IUIAutomationElement* element,
[in] enum TreeScope scope,
[in] IUIAutomationCacheRequest* cacheRequest,
[in] IUIAutomationActiveTextPositionChangedEventHandler* handler);
HRESULT RemoveActiveTextPositionChangedEventHandler(
[in] IUIAutomationElement* element,
[in] IUIAutomationActiveTextPositionChangedEventHandler* handler);
}
//
// CUIAutomation
//
[
uuid(ff48dba4-60ef-4201-aa87-54103eef594e),
version(1.0),
helpstring("The Central Class for UIAutomation")
]
coclass CUIAutomation
{
[default] interface IUIAutomation;
}
//
// CUIAutomation8
//
// Using this object provides the same interface
// as CUIAutomation, but some control proxy behaviors
// may be different. Use CUIAutomation if you want
// Win7-compatible control proxy behavior.
//
[
uuid(e22ad333-b25f-460c-83d0-0581107395c9),
version(1.0),
helpstring("The Central Class for UIAutomation8")
]
coclass CUIAutomation8
{
[default] interface IUIAutomation2;
interface IUIAutomation3;
interface IUIAutomation4;
interface IUIAutomation5;
interface IUIAutomation6;
}
}
cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */")
#pragma endregion