# Accessibility::Accessible Interface Reference

`import "Accessibility_Accessible.idl";`

Inheritance diagram for Accessibility::Accessible:

## Public Member Functions
boolean | isEqual (in Accessible obj)
Accessible | getChildAtIndex (in long index)
long | getIndexInParent ()
RelationSet | getRelationSet ()
Role | getRole ()
string | getRoleName ()
string | getLocalizedRoleName ()
StateSet | getState ()
AttributeSet | getAttributes ()
Application | getApplication ()
void | unimplemented ()
## Data Fields
attribute string | name
attribute string | description
readonly attribute Accessibility::Accessible | parent
readonly attribute long | childCount

## Detailed Description

defined in Accessibility_Application.idl The base interface which is implemented by all accessible objects. All objects support interfaces for querying their contained 'children' and position in the accessible-object hierarchy, whether or not they actually have children.

Note:
  Events that may be emitted by instances of Accessible include:
  - `"object:property-change"` A base (strongly-typed) object attribute has changed, for instance "object:property-change:accessible-name". Notifed property subtypes include accessible-name, accessible-description, accessible-parent and accessible-role.
  - `"object:children-changed"` The number or identity of an object's children has changed.
  - `"object:state-changed"` The object's StateSet has had a state added or removed.
  - `"object:active-descendant-changed"` If the object includes STATE_MANAGES_DESCENDANTS, this event is fired to indicate that the descendant having STATE_ACTIVE has changed; this corresponds to "micro" keyboard focus when the containing/emitting object has "macro" or technical keyboard focus. For instance, this event is usually emitted while traversing tables and/or spreadsheet cells.
  - `"object:attribute-change"` A weakly-typed property, as contained in the AttributeSet returned by Accessible::getAttributes, has changed in value, been added, or been removed from the object. ("object:attribute-change" notifications were added in AT-SPI 1.7.0)

## Member Function Documentation

Application Accessibility::Accessible::getApplication | ( |  | ) |

Get the containing Application for this object.

Returns:
  the Application instance to which this object belongs.

Since:
  AT-SPI 1.7.0

AttributeSet Accessibility::Accessible::getAttributes | ( |  | ) |

Get a list of properties applied to this object as a whole, as an AttributeSet consisting of name-value pairs. As such these attributes may be considered weakly-typed properties or annotations, as distinct from the strongly-typed interface instance data declared using the IDL "attribute" keyword.

Not all objects have explicit "name-value pair" AttributeSet properties.

Attribute names and values may have any UTF-8 string value, however where possible, in order to facilitate consistent use and exposure of "attribute" properties by applications and AT clients, attribute names and values should chosen from a publicly-specified namespace where appropriate.

Where possible, the names and values in the name-value pairs should be chosen from well-established attribute namespaces using standard semantics. For example, attributes of Accessible objects corresponding to XHTML content elements should correspond to attribute names and values specified in the w3c XHTML specification, at http://www.w3.org/TR/xhtml2, where such values are not already exposed via a more strongly-typed aspect of the AT-SPI API. Metadata names and values should be chosen from the 'Dublin Core' Metadata namespace using Dublin Core semantics: http://dublincore.org/dcregistry/ Similarly, relevant structural metadata should be exposed using attribute names and values chosen from the CSS2 and WICD specification: http://www.w3.org/TR/1998/REC-CSS2-19980512 WICD (http://www.w3.org/TR/2005/WD-WICD-20051121/).

Note:
  Clients seeking semantic or typographical attributes associated with specific character spans of text content should use Text::getAttributeRun instead. The attributes returned by Accessible::getAttributes do not include "text attributes".

See also:
  Accessibility::Text::getAttributeRun

Returns:
  : an AttributeSet encapsulating any "attribute values" currently defined for the object.

Since:
  AT-SPI 1.7.0

Accessible Accessibility::Accessible::getChildAtIndex | ( | in long | index | ) |

Get the accessible child of this object at `index`.

Parameters:

  | index,: | an in parameter indicating which child is requested (zero-indexed).

Returns:
  : the 'nth' Accessible child of this object.

long Accessibility::Accessible::getIndexInParent | ( |  | ) |

Get the index of this object in its parent's child list.

Returns:
  : a long integer indicating this object's index in the parent's list.

string Accessibility::Accessible::getLocalizedRoleName | ( |  | ) |

Get a string indicating the type of UI role played by this object, translated to the current locale.

Returns:
  : a UTF-8 string indicating the type of UI role played by this object.

RelationSet Accessibility::Accessible::getRelationSet | ( |  | ) |

Get a set defining this object's relationship to other accessible objects.

Returns:
  : a RelationSet defining this object's relationships.

Role Accessibility::Accessible::getRole | ( |  | ) |

Get the Role indicating the type of UI role played by this object.

Returns:
  : a Role indicating the type of UI role played by this object.

string Accessibility::Accessible::getRoleName | ( |  | ) |

Get a string indicating the type of UI role played by this object.

Returns:
  : a UTF-8 string indicating the type of UI role played by this object.

StateSet Accessibility::Accessible::getState | ( |  | ) |

Get the current state of the object as a StateSet.

Returns:
  : a StateSet encapsulating the currently true states of the object.

boolean Accessibility::Accessible::isEqual | ( | in Accessible | obj | ) |

Determine whether an Accessible refers to the same object as another. This method should be used rather than brute-force comparison of object references (i.e. "by-value" comparison), as two object references may have different apparent values yet refer to the same object.

Parameters:

  | obj,: | an Accessible object reference to compare to

Returns:
  : a `boolean` indicating whether the two object references point to the same object.

void Accessibility::Accessible::unimplemented | ( |  | ) |

/cond future expansion

## Field Documentation

readonly attribute long Accessibility::Accessible::childCount

childCount: the number of children contained by this object.

attribute string Accessibility::Accessible::description

a `string` describing the object in more detail than name.

attribute string Accessibility::Accessible::name

a (short) `string` representing the object's name.

readonly attribute Accessibility::Accessible Accessibility::Accessible::parent

an Accessible object which is this object's containing object.

The documentation for this interface was generated from the following file:

- /home/liyuan/src-git/at-spi/idl/Accessibility_Accessible.idl