increment version to 1.1.0, in view of the fact that we've branched for
[platform/upstream/atk.git] / docs / tmpl / atkobject.sgml
1 <!-- ##### SECTION Title ##### -->
2 AtkObject
3
4 <!-- ##### SECTION Short_Description ##### -->
5
6 The base object class for the Accessibility Toolkit API.
7
8 <!-- ##### SECTION Long_Description ##### -->
9 <para>
10 This class is the primary class for accessibility support via
11 the Accessibility ToolKit (ATK).  Objects which are instances
12 of #AtkObject (or instances of AtkObject-derived types) are
13 queried for properties which relate basic (and generic) properties of a
14 UI component such as name and description.  Instances of #AtkObject
15 may also be queried as to whether they implement other ATK interfaces
16 (e.g. #AtkAction, #AtkComponent, etc.), as appropriate to the role
17 which a given UI component plays in a user interface.
18 </para>
19 <para>All UI components in an application which provide useful
20 information or services to the user must provide corresponding
21 #AtkObject instances on request (in GTK+, for instance, usually
22 on a call to #gtk_widget_get_accessible ()), either via ATK support
23 built into the toolkit for the widget class or ancestor class, or in
24 the case of custom widgets, if the inherited #AtkObject implementation
25 is insufficient, via instances of a new #AtkObject subclass. 
26 </para>
27
28 <!-- ##### SECTION See_Also ##### -->
29 <para>
30 See also: #AtkObjectFactory, #AtkRegistry.
31 ( GTK+ users see also #GtkAccessible).
32 </para>
33
34 <!-- ##### STRUCT AtkObject ##### -->
35 <para>
36 The AtkObject structure should not be accessed directly.
37
38 </para>
39
40
41 <!-- ##### ENUM AtkRole ##### -->
42 <para>
43 These are the built-in enumerated roles that UI components can have in
44 ATK.  Other roles may be added at runtime, so an AtkRole >=
45 ATK_ROLE_LAST_DEFINED is not necessarily an error.
46 </para>
47
48 @ATK_ROLE_INVALID: 
49 @ATK_ROLE_ACCEL_LABEL: 
50 @ATK_ROLE_ALERT: 
51 @ATK_ROLE_ANIMATION: 
52 @ATK_ROLE_ARROW: 
53 @ATK_ROLE_CALENDAR: 
54 @ATK_ROLE_CANVAS: 
55 @ATK_ROLE_CHECK_BOX: 
56 @ATK_ROLE_CHECK_MENU_ITEM: 
57 @ATK_ROLE_COLOR_CHOOSER: 
58 @ATK_ROLE_COLUMN_HEADER: 
59 @ATK_ROLE_COMBO_BOX: 
60 @ATK_ROLE_DATE_EDITOR: 
61 @ATK_ROLE_DESKTOP_ICON: 
62 @ATK_ROLE_DESKTOP_FRAME: 
63 @ATK_ROLE_DIAL: 
64 @ATK_ROLE_DIALOG: 
65 @ATK_ROLE_DIRECTORY_PANE: 
66 @ATK_ROLE_DRAWING_AREA: 
67 @ATK_ROLE_FILE_CHOOSER: 
68 @ATK_ROLE_FILLER: 
69 @ATK_ROLE_FONT_CHOOSER: 
70 @ATK_ROLE_FRAME: 
71 @ATK_ROLE_GLASS_PANE: 
72 @ATK_ROLE_HTML_CONTAINER: 
73 @ATK_ROLE_ICON: 
74 @ATK_ROLE_IMAGE: 
75 @ATK_ROLE_INTERNAL_FRAME: 
76 @ATK_ROLE_LABEL: 
77 @ATK_ROLE_LAYERED_PANE: 
78 @ATK_ROLE_LIST: 
79 @ATK_ROLE_LIST_ITEM: 
80 @ATK_ROLE_MENU: 
81 @ATK_ROLE_MENU_BAR: 
82 @ATK_ROLE_MENU_ITEM: 
83 @ATK_ROLE_OPTION_PANE: 
84 @ATK_ROLE_PAGE_TAB: 
85 @ATK_ROLE_PAGE_TAB_LIST: 
86 @ATK_ROLE_PANEL: 
87 @ATK_ROLE_PASSWORD_TEXT: 
88 @ATK_ROLE_POPUP_MENU: 
89 @ATK_ROLE_PROGRESS_BAR: 
90 @ATK_ROLE_PUSH_BUTTON: 
91 @ATK_ROLE_RADIO_BUTTON: 
92 @ATK_ROLE_RADIO_MENU_ITEM: 
93 @ATK_ROLE_ROOT_PANE: 
94 @ATK_ROLE_ROW_HEADER: 
95 @ATK_ROLE_SCROLL_BAR: 
96 @ATK_ROLE_SCROLL_PANE: 
97 @ATK_ROLE_SEPARATOR: 
98 @ATK_ROLE_SLIDER: 
99 @ATK_ROLE_SPLIT_PANE: 
100 @ATK_ROLE_SPIN_BUTTON: 
101 @ATK_ROLE_STATUSBAR: 
102 @ATK_ROLE_TABLE: 
103 @ATK_ROLE_TABLE_CELL: 
104 @ATK_ROLE_TABLE_COLUMN_HEADER: 
105 @ATK_ROLE_TABLE_ROW_HEADER: 
106 @ATK_ROLE_TEAR_OFF_MENU_ITEM: 
107 @ATK_ROLE_TERMINAL: 
108 @ATK_ROLE_TEXT: 
109 @ATK_ROLE_TOGGLE_BUTTON: 
110 @ATK_ROLE_TOOL_BAR: 
111 @ATK_ROLE_TOOL_TIP: 
112 @ATK_ROLE_TREE: 
113 @ATK_ROLE_TREE_TABLE: 
114 @ATK_ROLE_UNKNOWN: 
115 @ATK_ROLE_VIEWPORT: 
116 @ATK_ROLE_WINDOW: 
117 @ATK_ROLE_LAST_DEFINED: 
118
119 <!-- ##### FUNCTION atk_role_register ##### -->
120 <para>
121
122 </para>
123
124 @name: 
125 @Returns: 
126
127
128 <!-- ##### ENUM AtkLayer ##### -->
129 <para>
130 These enumerated "layer values" are used when determining which UI
131 rendering layer a component is drawn into, which can help in making
132 determinations of when components occlude one another.
133 </para>
134
135 @ATK_LAYER_INVALID: 
136 @ATK_LAYER_BACKGROUND: 
137 @ATK_LAYER_CANVAS: 
138 @ATK_LAYER_WIDGET: 
139 @ATK_LAYER_MDI: 
140 @ATK_LAYER_POPUP: 
141 @ATK_LAYER_OVERLAY: 
142 @ATK_LAYER_WINDOW: 
143
144 <!-- ##### STRUCT AtkImplementor ##### -->
145 <para>
146 The AtkImplementor structure does not contain any fields.
147
148 </para>
149
150
151 <!-- ##### STRUCT AtkPropertyValues ##### -->
152 <para>
153 The Atk PropertyValue structure is used when notifying a change in property.
154 Currently, the only property for which old_value is used is
155 accessible-state; for instance if there is a focus change the
156 property change handler will be called for the object which lost the focus
157 with the old_value containing the AtkState value corresponding to focused
158 and the property change handler will be called for the object which
159 received the focus with the new_value containing the AtkState value
160 corresponding to focused.
161
162 </para>
163
164 @property_name: 
165 @old_value: 
166 @new_value: 
167
168 <!-- ##### USER_FUNCTION AtkFunction ##### -->
169 <para>
170 An AtkFunction is a function definition used for padding which has been added 
171 to class and interface structures to allow for expansion in the future.
172
173 </para>
174
175 @data: 
176 @Returns: 
177
178
179 <!-- ##### USER_FUNCTION AtkPropertyChangeHandler ##### -->
180 <para>
181 An AtkPropertyChangeHandler is a function which is executed when an AtkObject's property changes value. It is specified in a call to 
182 atk_object_connect_property_change_handler().
183 </para>
184
185 @Param1: 
186 @Param2: 
187
188
189 <!-- ##### FUNCTION atk_implementor_ref_accessible ##### -->
190 <para>
191
192 </para>
193
194 @implementor: 
195 @Returns: 
196
197
198 <!-- ##### FUNCTION atk_object_get_name ##### -->
199 <para>
200
201 </para>
202
203 @accessible: 
204 @Returns: 
205
206
207 <!-- ##### FUNCTION atk_object_get_description ##### -->
208 <para>
209
210 </para>
211
212 @accessible: 
213 @Returns: 
214
215
216 <!-- ##### FUNCTION atk_object_get_parent ##### -->
217 <para>
218
219 </para>
220
221 @accessible: 
222 @Returns: 
223
224
225 <!-- ##### FUNCTION atk_object_get_n_accessible_children ##### -->
226 <para>
227
228 </para>
229
230 @accessible: 
231 @Returns: 
232
233
234 <!-- ##### FUNCTION atk_object_ref_accessible_child ##### -->
235 <para>
236
237 </para>
238
239 @accessible: 
240 @i: 
241 @Returns: 
242
243
244 <!-- ##### FUNCTION atk_object_ref_relation_set ##### -->
245 <para>
246
247 </para>
248
249 @accessible: 
250 @Returns: 
251
252
253 <!-- ##### FUNCTION atk_object_get_layer ##### -->
254 <para>
255
256 </para>
257
258 @accessible: 
259 @Returns: 
260
261
262 <!-- ##### FUNCTION atk_object_get_mdi_zorder ##### -->
263 <para>
264
265 </para>
266
267 @accessible: 
268 @Returns: 
269
270
271 <!-- ##### FUNCTION atk_object_get_role ##### -->
272 <para>
273
274 </para>
275
276 @accessible: 
277 @Returns: 
278
279
280 <!-- ##### FUNCTION atk_object_ref_state_set ##### -->
281 <para>
282
283 </para>
284
285 @accessible: 
286 @Returns: 
287
288
289 <!-- ##### FUNCTION atk_object_get_index_in_parent ##### -->
290 <para>
291
292 </para>
293
294 @accessible: 
295 @Returns: 
296
297
298 <!-- ##### FUNCTION atk_object_set_name ##### -->
299 <para>
300
301 </para>
302
303 @accessible: 
304 @name: 
305
306
307 <!-- ##### FUNCTION atk_object_set_description ##### -->
308 <para>
309
310 </para>
311
312 @accessible: 
313 @description: 
314
315
316 <!-- ##### FUNCTION atk_object_set_parent ##### -->
317 <para>
318
319 </para>
320
321 @accessible: 
322 @parent: 
323
324
325 <!-- ##### FUNCTION atk_object_set_role ##### -->
326 <para>
327
328 </para>
329
330 @accessible: 
331 @role: 
332
333
334 <!-- ##### FUNCTION atk_object_connect_property_change_handler ##### -->
335 <para>
336
337 </para>
338
339 @accessible: 
340 @handler: 
341 @Returns: 
342
343
344 <!-- ##### FUNCTION atk_object_remove_property_change_handler ##### -->
345 <para>
346
347 </para>
348
349 @accessible: 
350 @handler_id: 
351
352
353 <!-- ##### FUNCTION atk_object_notify_state_change ##### -->
354 <para>
355
356 </para>
357
358 @accessible: 
359 @state: 
360 @value: 
361
362
363 <!-- ##### FUNCTION atk_object_initialize ##### -->
364 <para>
365
366 </para>
367
368 @accessible: 
369 @data: 
370
371
372 <!-- ##### FUNCTION atk_role_get_name ##### -->
373 <para>
374
375 </para>
376
377 @role: 
378 @Returns: 
379
380
381 <!-- ##### FUNCTION atk_role_for_name ##### -->
382 <para>
383
384 </para>
385
386 @name: 
387 @Returns: 
388
389
390 <!-- ##### SIGNAL AtkObject::children-changed ##### -->
391 <para>
392 The children_changed signal supports two details, "add" and "remove" which
393 indicate whether a child was added or removed
394 </para>
395
396 @atkobject: the object which received the signal.
397 @arg1: The index of the added or removed child
398 @arg2: The child which was added or removed
399
400 <!-- ##### SIGNAL AtkObject::focus-event ##### -->
401 <para>
402
403 </para>
404
405 @atkobject: the object which received the signal.
406 @arg1: A boolean value which indicates whether or not the focus event is is or out.
407
408 <!-- ##### SIGNAL AtkObject::property-change ##### -->
409 <para>
410 This signal support a detail which identifies the property which has
411 changed.
412 </para>
413
414 @atkobject: the object which received the signal.
415 @arg1: The new value of the property which changed.
416
417 <!-- ##### SIGNAL AtkObject::state-change ##### -->
418 <para>
419 This signal support, which may be any of the accessible state types.
420 </para>
421
422 @atkobject: the object which received the signal.
423 @arg1: The name of the state which has changed
424 @arg2: A boolean which indicates whether the state has been set or unset.
425
426 <!-- ##### SIGNAL AtkObject::visible-data-changed ##### -->
427 <para>
428
429 </para>
430
431 @atkobject: the object which received the signal.
432
433 <!-- ##### ARG AtkObject:accessible-name ##### -->
434 <para>
435
436 </para>
437
438 <!-- ##### ARG AtkObject:accessible-description ##### -->
439 <para>
440
441 </para>
442
443 <!-- ##### ARG AtkObject:accessible-parent ##### -->
444 <para>
445
446 </para>
447
448 <!-- ##### ARG AtkObject:accessible-value ##### -->
449 <para>
450
451 </para>
452
453 <!-- ##### ARG AtkObject:accessible-role ##### -->
454 <para>
455
456 </para>
457
458 <!-- ##### ARG AtkObject:accessible-component-layer ##### -->
459 <para>
460
461 </para>
462
463 <!-- ##### ARG AtkObject:accessible-component-mdi-zorder ##### -->
464 <para>
465
466 </para>
467
468 <!-- ##### ARG AtkObject:accessible-table-caption ##### -->
469 <para>
470
471 </para>
472
473 <!-- ##### ARG AtkObject:accessible-table-column-description ##### -->
474 <para>
475
476 </para>
477
478 <!-- ##### ARG AtkObject:accessible-table-column-header ##### -->
479 <para>
480
481 </para>
482
483 <!-- ##### ARG AtkObject:accessible-table-row-description ##### -->
484 <para>
485
486 </para>
487
488 <!-- ##### ARG AtkObject:accessible-table-row-header ##### -->
489 <para>
490
491 </para>
492
493 <!-- ##### ARG AtkObject:accessible-table-summary ##### -->
494 <para>
495
496 </para>
497