Accessibility/Comparisons:AT SPI To UA

From MozillaWiki
Jump to: navigation, search

AT-SPI interfaces to Universal Access

This page attempts to give an overview of most of AT-SPI's interfaces, and how they map to Universal Access.

Note that it's not complete, and if you are considering to implement UA support, your main reference should always be Apple's official documentation. You are encouraged to add, and edit entries to help out.

Accessibility::Accessible

AT-SPIUA
boolean isEqual (in Accessible obj) [accessible isEqual:otherAccessible];
Accessible getChildAtIndex (in long index) Get the children array of the NSAccessibilityChildrenAttribute
long getIndexInParent () -
RelationSet getRelationSet () -
Role getRole () Get the value of the NSAccessibilityRoleAttribute
string getRoleName () The returned string above is the role name.
string getLocalizedRoleName () The role name is always localized.
StateSet getState () In UA, you can get all attributes an object supports by calling [accessible accessibilityAttributeNames];
AttributeSet getAttributes () See above.
Application getApplication () -
Accessible getDocumentObject () -

Accessibility::Value

The properties of this interface can be mapped to the AXMaxValueAttribute, AXMinValueAttribute and of course AXValueAttribute.

Accessibility::Table

AT-SPIUA
Accessible getAccessibleAt (in long row, in long column) -
long getIndexAt (in long index) -d
long getRowAtIndex (in long index) -
long getColumnAtIndex (in long index) -
string getRowDescription (in long row) see getRowHeader() below, and then the same as getting a role's description on an Accessible.
string getColumnDescription (in long column) see getColumnHeader() below, and the same as getting a role's description on a normal Accessible.
LongSeq getSelectedRows () Get the AXSelectedRowsAttribute's value.
LongSeq getSelectedColumns () Get the AXSelectedColumnsAttribute's value.
boolean isRowSelected (in long index) Check the AXSelectedAttribute's value on the row.
boolean isColumnSelected (in long index) Same as above? (Unclear if columns can be "selected" on Mac.)
boolean isSelected (in long row, in long column) -
boolean addRowSelection (in long index) Set the AXSelectedAttribute on the new row?
boolean addColumnSelection (in long index) -
boolean removeRowSelection (in long index) See addRowSelection() above.
boolean removeColumnSelection (in long index) -
boolean getRowColumnExtentsAt (in long index, out long row, out long col, out long row_extents, out long col_extents, out boolean is_selected) -