3 Supported UIA Properties and Control Pattern Methods
Basically, the Properties, Methods and functionality are defined by the UI Automation Specification
. Therefore, this chapter has rather informative character to show the relation to the IDM.
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
AcceleratorKey |
.accelerator |
The keyboard shortcut of the accelerator is returned. |
|
AccessKey |
.text |
The Mnemonic character in the text is returned, for example "Alt+E" for .text "&Edit". |
|
AutomationId |
.label, .acc_label |
.acc_label, if set, takes precedence over .label. The .label may be supplemented by the numbering |
|
BoundingRectangle |
.x, .y |
Position and size of the object. |
|
ClassName |
– |
Attention System names or IDM-specific names that may differ from version to version and have no 1:1 correlation with the IDM object class. |
|
ClickablePoint |
– |
Point inside the BoundingRectangle for executing a mouse click. |
|
ControlType |
.class
|
The mapping to a UIA Control Type does not solely depend on the object class, but possibly also on further object attributes. |
|
FrameworkId |
– |
Provided through the UIA implementation by Microsoft. |
|
HasKeyboardFocus |
.focus |
Returns whether the object has the keyboard focus. |
|
HelpText |
.toolhelp |
If no help text is set in .toolhelp, .statushelp will be returned. |
|
IsEnabled |
.sensitive |
Returns the operability respectively sensitivity of the UIA Element. |
|
IsKeyboardFocusable |
– |
Object is sensitive and can receive keyboard focus. |
|
IsOffscreen |
|
UIA element is visible, but may be covered by overlying windows or elements |
|
IsPassword |
.format |
For a format with hidden formatting (format string starts with |
|
LocalizedControlType |
– |
Provided through the UIA implementation by Microsoft. |
|
LabeledBy |
– |
If the IDM object is preceded by an insensitive statictext, the appropriate UIA Element is returned. |
|
Name |
.text, .title, .acc_text
|
Name of the UIA Element. May be overwritten by the .acc_text attribute. |
|
NativeWindowHandle |
AT_WinHandle |
Usually the same as the HWND that DM_GetToolkitData() returns for AT_WinHandle. |
|
Orientation |
.direction, .docking |
For IDM object classes like splitbox, scrollbar, toolbar and tablefield the respective direction is returned here. |
|
OrientationType_Horizontal |
.direction = 2 |
|
|
OrientationType_Vertical |
.direction = 1 |
|
|
OrientationType_Horizontal |
.docking = dock_<up|down|window> |
|
|
OrientationType_Vertical |
.docking = dock_<left|right> |
|
|
ProcessId |
– |
Provided through the UIA implementation by Microsoft. |
|
ProviderDescription |
– |
Provided through the UIA implementation by Microsoft. |
|
RuntimeId |
– |
Usually provided through the UIA implementation by Microsoft. |
3.1 Value Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ValueIsReadOnly |
.editable
|
Input field or table cell is editable. A listbox always returns true. |
|
Value |
.content
|
Returns the (formatted) content of an input field, a poptext, treeview or listbox item, or a table cell. |
|
SetValue() |
.content
|
Modifies the value of the input field or table cell. |
3.2 RangeValue Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ValueIsReadOnly |
– |
Range value may be changed via SetValue(). |
|
Value |
.curvalue |
Range value of a spinbox or scrollbar. |
|
Minimum |
.minvalue |
Lower Range limit. |
|
Maximum |
.maxvalue |
Upper Range limit. |
|
SetValue() |
– |
Modifies the Range value. |
3.3 Scroll Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
HorizontallyScrollable |
– |
Horizontal scrolling is possible. |
|
HorizonalScrollPercent |
– |
Computed value from .vwidth and real width in %. |
|
HorizontalViewSize |
– |
Computed value from .vwidth and real width in %. |
|
VerticallyScrollable |
– |
Vertical scrolling is possible. |
|
VericalScrollPercent |
– |
Computed value from .vheight and real height in %. |
|
VericalViewSize |
– |
Computed value from .vheight and real height in %. |
|
Scroll() |
– |
Scrolls relatively. |
|
SetScrollPercent() |
– |
Scrolls to a specific % position. |
3.4 ScrollItem Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ScrollIntoView() |
– |
Scrolls the element into the visible area. |
3.5 Transform Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
CanMove |
.moveable |
Window or toolbar can be moved. |
|
CanResize |
.sizeable |
Window or toolbar can be decreased and increased in size. Or the splibox area can be decreased and increased in size. |
|
CanRotate |
– |
Not covered by the IDM. |
|
Move() |
– |
Allows moving a window or toolbar. |
|
Resize() |
– |
Allows resizing a window, toolbar or splibox area. |
|
Rotate() |
– |
– |
3.6 Grid Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ColumnCount |
.colcount |
Returns the number of visible columns in a table. |
|
RowCount |
.rowcount |
Returns the number of visible rows in a table. |
|
GetItem() |
– |
Returns the UIA Element of a cell. |
3.7 GridItem Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
GridItemColumn |
– |
Column index (from 0 and without invisible columns). |
|
GridItemColumnSpan |
– |
Is always 1 because cells cannot be merged in the IDM. |
|
GridItemRowCount |
– |
Row index (from 0 and without invisible rows). |
|
GridItemRowSpan |
– |
Is always 1 because cells cannot be merged in the IDM. |
3.8 Selection Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
SelectionCanSelectMultiple |
.multisel
|
Listboxes and tables may support multiple selection. |
|
SelectionIsRequired |
– |
Is a selection required? |
|
GetSelection() |
– |
Returns the selected UIA Elements. |
3.9 SelectionItem Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
SelectionItemIsSelected |
.active |
Returns true for an active item. |
|
AddToSelection() |
– |
Adds an item to a multiple selection. |
|
RemoveFromSelect() |
– |
Removes a selected item from a multiple selection. |
|
Select() |
– |
Selects this item. |
3.10 Toggle Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ToggleState |
.active
|
Activation or state of a checkbox, image object or menuitem in checkbox style. |
|
Toggle() |
– |
Toggles the states between checked, unchecked and indeterminate. |
3.11 ExpandCollapse Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
ExpandCollapseState |
.open (Treeview) |
– |
|
Collapse() |
– |
Close a subtree. |
|
Expand() |
– |
Open a subtree. |
3.12 Window Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
CanMinimize |
.iconifyable |
Window can be minimized. |
|
CanMaximize |
.maximizable |
Window can be maximized. |
|
IsTopmost |
.top_most |
Window is always in front of all other windows. |
|
WindowIsModal |
.dialogbox |
Windows with .dialogbox = true are modal windows. |
|
WindowInteractionState |
– |
– |
|
WindowVisualState |
– |
Window state (minimized, maximized, etc.). |
|
Close() |
– |
Close the window. |
|
SetWindowVisualState() |
– |
Enables to minimize or maximize the window. |
|
WaitForInputIdle() |
– |
– |
3.13 Dock Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
DockDockPosition |
.docking |
Returns the docking position of a toolbar. |
|
SetDockPosition() |
– |
Allows to change the docking of a toolbar. |
3.14 Table Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
TableRowOrColumnMajor |
.direction |
Indicates the orientation of the table. |
|
GetColumnHeaders() |
– |
Returns the UIA Elements of the visible column header cells. |
|
GetRowHeaders() |
– |
Returns the UIA Elements of the visible row header cells. |
3.15 TableItem Pattern
|
UIA Property/Method |
IDM Attribute |
Remarks |
|---|---|---|
|
GetColumnHeaderItems() |
– |
Returns the corresponding UIA Elements in the header range [row,1] … [row,.colheader] of the table. |
|
GetRowHeaderItems() |
– |
Returns the corresponding UIA Elements in the header range [1,col] … [.rowheader,col] of the table. |