|
|
UNO Accessibility APIThe UNO Accessibility API (also called UAA in the following) is modeled closely after Java Accessibility API in version 1.4 and the the Gnome Accessibility API. The UAA is part of the offapi project. You can browse the CVS archive at com/sun/star/accessibility or have a look at the documentation here. Representation of GUI and documentsThe UAA represents both structure and content of the GUI. Here GUI included the views of documents that are embedded therein. StructureEach top-level window of the GUI is represented as a tree of accessibility objects. Each accessibility object stands for one GUI element or one object of a document view:
This tree structure is realized by implementing the
RelationsRelations introduce a secondary structure that is independent of the tree hierarchy created by the parent/child relationship provided by theXAccessibleContext interface. Relation sets as
returned by the XAccessibleContext::getAccessibleRelationSet() are defined
by the XAccessibleRelationSet interface.
ContentEach node of the tree that implements
EventsThe tree modeled by the UAA is not a static data
structure. Because of scrolling the document window, changing its content, or
modifying the contents of GUI controls, the structure and content of single
nodes and sub-trees is constantly changing. These changes are notified to the
AT by sending events to registered listeners (among them the AT). The kind of
event that is sent for a specific change depends on the UAA interfaces that
the node that represents the modified object does support and on the actual
implementation of these interfaces. Listeners to accessibility events
implement the Independent implementation of the UAAThe Differences between the Accessibility APIs of UNO and JavaHere is a list of major differences between the UNO and the Java Accessibility APIs:
Documentation of the UNO Accessibility APIMore details of the UAA can be found in the API reference. The services that expose application specific details of the UAA can be found here for the GUI, Writer, Calc, Draw/Impress, and Chart. |


