Add documentation for AtkKeyEventType
[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
143 <!-- ##### STRUCT AtkImplementor ##### -->
144 <para>
145 The AtkImplementor structure does not contain any fields.
146
147 </para>
148
149
150 <!-- ##### STRUCT AtkImplementorIface ##### -->
151 <para>
152 This interface provides an alternative means of obtaining AtkObjects
153 from a GObject instance, and for querying whether a GObject instance
154 provides ATK functionality.
155 </para>
156
157 @parent: 
158 @ref_accessible: 
159
160 <!-- ##### STRUCT AtkRelationSet ##### -->
161 <para>
162 The AtkRelationSet structure should not be accessed directly.
163
164 </para>
165
166
167 <!-- ##### STRUCT AtkPropertyValues ##### -->
168 <para>
169 The Atk PropertyValue structure is used when notifying a change in property.
170 Currently, the only property for which old_value is used is
171 accessible-state; for instance if there is a focus change the
172 property change handler will be called for the object which lost the focus
173 with the old_value containing the AtkState value corresponding to focused
174 and the property change handler will be called for the object which
175 received the focus with the new_value containing the AtkState value
176 corresponding to focused.
177
178 </para>
179
180 @property_name: 
181 @old_value: 
182 @new_value: 
183
184 <!-- ##### USER_FUNCTION AtkFunction ##### -->
185 <para>
186 An AtkFunction is a function definition used for padding which has been added 
187 to class and interface structures to allow for expansion in the future.
188
189 </para>
190
191 @data: 
192 @Returns: 
193
194
195 <!-- ##### USER_FUNCTION AtkPropertyChangeHandler ##### -->
196 <para>
197 An AtkPropertyChangeHandler is a function which is executed when an AtkObject's property changes value. It is specified in a call to 
198 atk_object_connect_property_change_handler().
199 </para>
200
201 @Param1: 
202 @Param2: 
203
204
205 <!-- ##### FUNCTION atk_implementor_ref_accessible ##### -->
206 <para>
207
208 </para>
209
210 @implementor: 
211 @Returns: 
212
213
214 <!-- ##### FUNCTION atk_object_get_name ##### -->
215 <para>
216
217 </para>
218
219 @accessible: 
220 @Returns: 
221
222
223 <!-- ##### FUNCTION atk_object_get_description ##### -->
224 <para>
225
226 </para>
227
228 @accessible: 
229 @Returns: 
230
231
232 <!-- ##### FUNCTION atk_object_get_parent ##### -->
233 <para>
234
235 </para>
236
237 @accessible: 
238 @Returns: 
239
240
241 <!-- ##### FUNCTION atk_object_get_n_accessible_children ##### -->
242 <para>
243
244 </para>
245
246 @accessible: 
247 @Returns: 
248
249
250 <!-- ##### FUNCTION atk_object_ref_accessible_child ##### -->
251 <para>
252
253 </para>
254
255 @accessible: 
256 @i: 
257 @Returns: 
258
259
260 <!-- ##### FUNCTION atk_object_ref_relation_set ##### -->
261 <para>
262
263 </para>
264
265 @accessible: 
266 @Returns: 
267
268
269 <!-- ##### FUNCTION atk_object_get_layer ##### -->
270 <para>
271
272 </para>
273
274 @accessible: 
275 @Returns: 
276
277
278 <!-- ##### FUNCTION atk_object_get_mdi_zorder ##### -->
279 <para>
280
281 </para>
282
283 @accessible: 
284 @Returns: 
285
286
287 <!-- ##### FUNCTION atk_object_get_role ##### -->
288 <para>
289
290 </para>
291
292 @accessible: 
293 @Returns: 
294
295
296 <!-- ##### FUNCTION atk_object_ref_state_set ##### -->
297 <para>
298
299 </para>
300
301 @accessible: 
302 @Returns: 
303
304
305 <!-- ##### FUNCTION atk_object_get_index_in_parent ##### -->
306 <para>
307
308 </para>
309
310 @accessible: 
311 @Returns: 
312
313
314 <!-- ##### FUNCTION atk_object_set_name ##### -->
315 <para>
316
317 </para>
318
319 @accessible: 
320 @name: 
321
322
323 <!-- ##### FUNCTION atk_object_set_description ##### -->
324 <para>
325
326 </para>
327
328 @accessible: 
329 @description: 
330
331
332 <!-- ##### FUNCTION atk_object_set_parent ##### -->
333 <para>
334
335 </para>
336
337 @accessible: 
338 @parent: 
339
340
341 <!-- ##### FUNCTION atk_object_set_role ##### -->
342 <para>
343
344 </para>
345
346 @accessible: 
347 @role: 
348
349
350 <!-- ##### FUNCTION atk_object_connect_property_change_handler ##### -->
351 <para>
352
353 </para>
354
355 @accessible: 
356 @handler: 
357 @Returns: 
358
359
360 <!-- ##### FUNCTION atk_object_remove_property_change_handler ##### -->
361 <para>
362
363 </para>
364
365 @accessible: 
366 @handler_id: 
367
368
369 <!-- ##### FUNCTION atk_object_notify_state_change ##### -->
370 <para>
371
372 </para>
373
374 @accessible: 
375 @state: 
376 @value: 
377
378
379 <!-- ##### FUNCTION atk_object_initialize ##### -->
380 <para>
381
382 </para>
383
384 @accessible: 
385 @data: 
386
387
388 <!-- ##### FUNCTION atk_role_get_name ##### -->
389 <para>
390
391 </para>
392
393 @role: 
394 @Returns: 
395
396
397 <!-- ##### FUNCTION atk_role_for_name ##### -->
398 <para>
399
400 </para>
401
402 @name: 
403 @Returns: 
404
405
406 <!-- ##### SIGNAL AtkObject::children-changed ##### -->
407 <para>
408 The children_changed signal supports two details, "add" and "remove" which
409 indicate whether a child was added or removed
410 </para>
411
412 @atkobject: the object which received the signal.
413 @arg1: The index of the added or removed child
414 @arg2: The child which was added or removed
415
416 <!-- ##### SIGNAL AtkObject::focus-event ##### -->
417 <para>
418
419 </para>
420
421 @atkobject: the object which received the signal.
422 @arg1: A boolean value which indicates whether or not the focus event is is or out.
423
424 <!-- ##### SIGNAL AtkObject::property-change ##### -->
425 <para>
426 This signal support a detail which identifies the property which has
427 changed.
428 </para>
429
430 @atkobject: the object which received the signal.
431 @arg1: The new value of the property which changed.
432
433 <!-- ##### SIGNAL AtkObject::state-change ##### -->
434 <para>
435 This signal support, which may be any of the accessible state types.
436 </para>
437
438 @atkobject: the object which received the signal.
439 @arg1: The name of the state which has changed
440 @arg2: A boolean which indicates whether the state has been set or unset.
441
442 <!-- ##### SIGNAL AtkObject::visible-data-changed ##### -->
443 <para>
444
445 </para>
446
447 @atkobject: the object which received the signal.
448
449 <!-- ##### ARG AtkObject:accessible-name ##### -->
450 <para>
451
452 </para>
453
454 <!-- ##### ARG AtkObject:accessible-description ##### -->
455 <para>
456
457 </para>
458
459 <!-- ##### ARG AtkObject:accessible-parent ##### -->
460 <para>
461
462 </para>
463
464 <!-- ##### ARG AtkObject:accessible-value ##### -->
465 <para>
466
467 </para>
468
469 <!-- ##### ARG AtkObject:accessible-role ##### -->
470 <para>
471
472 </para>
473
474 <!-- ##### ARG AtkObject:accessible-component-layer ##### -->
475 <para>
476
477 </para>
478
479 <!-- ##### ARG AtkObject:accessible-component-mdi-zorder ##### -->
480 <para>
481
482 </para>
483
484 <!-- ##### ARG AtkObject:accessible-table-caption ##### -->
485 <para>
486
487 </para>
488
489 <!-- ##### ARG AtkObject:accessible-table-column-description ##### -->
490 <para>
491
492 </para>
493
494 <!-- ##### ARG AtkObject:accessible-table-column-header ##### -->
495 <para>
496
497 </para>
498
499 <!-- ##### ARG AtkObject:accessible-table-row-description ##### -->
500 <para>
501
502 </para>
503
504 <!-- ##### ARG AtkObject:accessible-table-row-header ##### -->
505 <para>
506
507 </para>
508
509 <!-- ##### ARG AtkObject:accessible-table-summary ##### -->
510 <para>
511
512 </para>
513