1 <node name="/node" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
3 <tp:title>AT-SPI - Assistive Technology Service Provider Interface </tp:title>
4 <tp:copyright>Copyright 2008 Novell, Inc.</tp:copyright>
5 <tp:copyright>Copyright 2001 Sun Microsystems Inc.</tp:copyright>
6 <tp:license xmlns="http://www.w3.org/1999/xhtml">
7 <p>This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public
9 License as published by the Free Software Foundation; either
10 version 2 of the License, or (at your option) any later version.</p>
12 <p>This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Library General Public License for more details.</p>
17 <p>You should have received a copy of the GNU Library General Public
18 License along with this library; if not, write to the
19 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.</p>
22 <tp:enum name="LOCALE_TYPE" type="u">
24 used by Text and Document: these correspond to the POSIX setlocale() enum values.
26 <tp:enumvalue suffix="LOCALE_TYPE_MESSAGES"/>
27 <tp:enumvalue suffix="LOCALE_TYPE_COLLATE" value="1"/>
28 <tp:enumvalue suffix="LOCALE_TYPE_CTYPE" value="2"/>
29 <tp:enumvalue suffix="LOCALE_TYPE_MONETARY" value="3"/>
30 <tp:enumvalue suffix="LOCALE_TYPE_NUMERIC" value="4"/>
31 <tp:enumvalue suffix="LOCALE_TYPE_TIME" value="5"/>
33 <tp:struct name="BoundingBox">
34 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
35 <p>Used by Component and Text, a struct defining a bounding rectangle.
36 The relevant coordinate system is determined by the context of the
37 API call which returned or receives the value.</p>
39 <tp:member type="i" tp:name="x">
41 < the value corresponding to the minimum or leftmost x position.
44 <tp:member type="i" tp:name="y">
46 < the value corresponding to the minimum y value.
49 <tp:member type="i" tp:name="width">
50 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
51 <p>< the horizontal extent of the bounding box,
52 that is, the difference between the maximum and minimum
53 x coordinate bounds.</p>
56 <tp:member type="i" tp:name="height">
57 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
58 <p>< the vertical extent of the bounding box,
59 that is, the difference between the maximum and minimum
60 y coordinate bounds.</p>
64 <interface name="org.freedesktop.atspi.Accessible">
65 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
66 <p>The base interface which is implemented by all accessible objects.
67 All objects support interfaces for querying their contained 'children'
68 and position in the accessible-object hierarchy, whether or not they
69 actually have children. </p>
71 <p>@note Events that may be emitted by instances of Accessible include:
72 \li \c "object:property-change" A base (strongly-typed) object attribute has changed,
73 for instance "object:property-change:accessible-name".
74 Notifed property subtypes include accessible-name, accessible-description,
75 accessible-parent and accessible-role. </p>
77 <p>\li \c "object:children-changed" The number or identity of an object's children
79 \li \c "object:state-changed" The object's StateSet has had a state added
81 \li \c "object:active-descendant-changed" If the object includes
82 STATE_MANAGES_DESCENDANTS, this event is fired to indicate that the
83 descendant having STATE_ACTIVE has changed; this corresponds to
84 "micro" keyboard focus when the containing/emitting object has
85 "macro" or technical keyboard focus. For instance, this event is
86 usually emitted while traversing tables and/or spreadsheet cells.
87 \li \c "object:attribute-change" A weakly-typed property, as contained in the
88 AttributeSet returned by Accessible::getAttributes, has changed in value,
89 been added, or been removed from the object.
90 ("object:attribute-change" notifications were added in AT-SPI 1.7.0)</p>
92 <tp:property name="name" type="s" access="readwrite">
94 a (short) \c string representing the object's name.
97 <tp:property name="description" type="s" access="readwrite">
99 a \c string describing the object in more detail than \a name.
102 <tp:property name="parent" type="o" access="read">
104 an ::Accessible object which is this object's containing object.
107 <tp:property name="childCount" type="i" access="read">
109 childCount: the number of children contained by this object.
112 <method name="getChildren">
114 Get the accessible children of this object.
116 <arg direction="out" type="ao" tp:type="AccessibleSet">
118 the ::Accessible children of this object.
122 <method name="getIndexInParent">
124 Get the index of this object in its parent's child list.
126 <arg direction="out" type="i">
128 a long integer indicating this object's index in the parent's list.
132 <!-- TODO: Decide whether to implement this, or put these in the tree
133 <method name="getRelationSet">
135 Get a set defining this object's relationship to other accessible objects.
137 <arg direction="out" type="a(uao)" tp:type="RelationSet">
139 a ::RelationSet defining this object's relationships.
144 <method name="getRole">
145 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
146 <p>Get the ::Role indicating the type of UI role played by this object. </p>
148 <arg direction="out" type="u" tp:type="Role">
150 a ::Role indicating the type of UI role played by this object.
154 <method name="getRoleName">
155 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
156 <p>Get a string indicating the type of UI role played by this object. </p>
158 <arg direction="out" type="s">
160 a UTF-8 string indicating the type of UI role played by this object.
164 <method name="getLocalizedRoleName">
165 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
166 <p>Get a string indicating the type of UI role played by this object,
167 translated to the current locale. </p>
169 <arg direction="out" type="s">
171 a UTF-8 string indicating the type of UI role played by this object.
175 <method name="getState">
177 Get the current state of the object as a ::StateSet.
179 <arg direction="out" type="au" tp:type="StateSet">
181 a ::StateSet encapsulating the currently true states of the object.
182 Returns an array of (currently two) 32-bit integers giving bitwise flags.
186 <method name="getAttributes">
187 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
188 <p>Get a list of properties applied to this object as a whole, as an
189 ::AttributeSet consisting of name-value pairs. As such these attributes
190 may be considered weakly-typed properties or annotations, as distinct
191 from the strongly-typed interface instance data declared using the IDL
192 "attribute" keyword. </p>
194 <p>Not all objects have explicit "name-value pair" AttributeSet properties. </p>
196 <p>Attribute names and values may have any UTF-8 string value, however where possible,
197 in order to facilitate consistent use and exposure of "attribute" properties by
198 applications and AT clients, attribute names and values should chosen from
199 a publicly-specified namespace where appropriate. </p>
201 <p>Where possible, the names and values in the name-value pairs
202 should be chosen from well-established attribute namespaces
203 using standard semantics.
204 For example, attributes of ::Accessible objects corresponding to XHTML content
205 elements should correspond to attribute names and values specified in the w3c
206 XHTML specification, at http://www.w3.org/TR/xhtml2, where such values are not
207 already exposed via a more strongly-typed aspect of the AT-SPI API.
209 values should be chosen from the 'Dublin Core' Metadata
210 namespace using Dublin Core semantics:
211 http://dublincore.org/dcregistry/
212 Similarly, relevant structural metadata should be exposed
213 using attribute names and values chosen from the CSS2 and WICD specification:
214 http://www.w3.org/TR/1998/REC-CSS2-19980512
215 WICD (http://www.w3.org/TR/2005/WD-WICD-20051121/). </p>
217 <p>@note Clients seeking semantic or typographical attributes associated with
218 specific character spans of text content should use ::Text::getAttributeRun instead.
219 The attributes returned by Accessible::getAttributes do not include
220 "text attributes". </p>
222 <p>@see ::Accessibility::Text::getAttributeRun </p>
224 <arg direction="out" type="as" tp:type="AttributeSet">
226 an ::AttributeSet encapsulating any "attribute values" currently defined for the object.@since AT-SPI 1.7.0
230 <method name="getApplication">
231 <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
232 <p>Get the containing Application for this object. </p>
234 <arg direction="out" type="o" tp:type="Application">
236 the Application instance to which this object belongs.@since AT-SPI 1.7.0
240 <method name="unimplemented">
242 /cond future expansion